当前位置: 首页 > news >正文

Linux目录结构与文件管理 (02)(四)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

目录

前言

一、查看文件内容

二、创建文件

三、删除文件

四、 移动文件

五、复制文件

六、编辑文件内容   

总结


前言

今天是在昨天的基础上继续学习,主要是学习文件管理的部分,还是一些基本的操作命令,同样也是学习Linux 最基础的部分,对于我们刚学习的人来说也很重要,望一起共勉。


一、查看文件内容

 1、cat     将文件内容直接打印到终端(标准输出)

                选项  -n显示行号

 2、more     将文件内容分页显示到终端

        用法:  enter     向下翻行

                     空格     向上翻页

                      q           退出

        缺点:只能向下,不能向上

                   不支持查找

3、less     将文件内容分页显示到终端

        用法:   翻行      enter   

                                   方向键

                      翻页       空格
                                    pgup
                                    pgdn
          返回文件首页
                                     g
                                     home键
          跳转到文件末尾
                                      G
                                       end键
           根据关键字查找
                                            /关键字
                                           n向下查找
                                           N向上查找
                       退出
                                          q

 4、head     显示文件内容的前几行 ( 默认显示前10行 )
             选项
                   -n 要显示的行数
                   -要显示的行数

 5、tail      显示文件内容的后几行  ( 默认显示10行 )
           选项
                -n  要显示的行数
                -  要显示的行数
                -f
                       动态显示文件内容
                       监视文件内容的变化
                   应用场景 : 动态监视日志

 6、管道符    | 
                  将前一个命令处理的结果交给后一个命令进行再次处理  (流水线 )

例:显示/etc/virc文件的第5行     命令:  head -5 virc | tail -1

二、创建文件

1、touch      空文件
          touch /path/fileName 
                                                              

 2、重定向符号
    正确重定向          >   覆盖
                               >>  追加
    错误重定向         2>  覆盖
                               2>>   追加
    混合重定向         &>    覆盖
                               &>>    追加

3、echo       非空文件
      echo > /path/fileName

     echo 内容 > /path/fileName

 4、vim          默认空文件
         vim /path/fileName
              :wq! (强制保存退出)

三、删除文件

 rm     删除文件

    选项   -i     交互式询问是否操作

              -f     强制删除

四、 移动文件

重命名
              当前目录重命名         mv  old_fileName  new_fileName
              移动后重命名             mv  /source_path/old_fileName  /dest_path/fileName
 移动
                  mv /source_path/fileName  /dest_path/

五、复制文件

 cp       复制文件
        选项    
            -i          当目标文件已存在时,交互式询问是否操作
            -p         保留属主及属组权限复制文件
            -f          当目标文件存在,先删除后复制

 六、编辑文件内容   

    vim           编辑文件内容 

模式类型:

1、命令模式      vim 进入文件的初始模式

    用法:
    (1)     G      跳转到文件末尾
      (2)     gg       返回文件首行
      (3)同行跳转
                跳到首字符
                         home键
                         ctrl  + ^
               跳到尾字符
                        end键
                        ctrl + $
      (4)复制行
               单行     yy
               多行    要复制的行数yy      ( 从光标所在行开始 )
      (5)粘贴行
                p       将光标移动到想要粘贴位置的上一行
                P       将光标移动到想要粘贴位置的下一行
      
     (6) 撤销操作     u     (注意:进行保存且退出后无效)           
     (7) 删除行
                   单行   dd  
                   多行    要删除的行数dd      ( 从光标所在行开始 )
     (8)同行删除部分字段  D    ( 从光标所在字符到行尾 )
     (9)替换某一个字符     r    ( 光标所在字符 )
     (10)删除单个字符      del键   ( 光标所在字符的后一个字符 )
     (11)根据关键字查找
                    /关键字
                     n向下查找
                     N向上查找
     (12)保存且退出        ZZ
     (13)进入其他模式
                            插入模式
                            末行模式

 2、插入模式
    (1) 进行文件内容编辑
    (2)进入插入模式
         在命令模式下输入
           a     在当前光标的后一个字符插入
           o     在当前光标的下一行插入
           i      在当前光标所在字符插入
               返回命令模式时会将光标迁移一个字符
           A        在光标所在行的尾字符后插入
           I(大写i)    在光标所在行的首字符插入
           O         在当前光标的上一行插入
    (3)返回命令模式          ESC

3、视图模式
      进行行选中          v

4、视图块模式
    (1)进行列选中      ctrl + v
          注释   #
    (2)常用操作
        批量删除注释
                         ctrl + v
                         利用上下方向键选中
                         del
        批量增加注释
                           ctrl + v
                           利用上下方向键选中
                           输入 大写i  I
                            输入#
                            按两次ESC

5、末行模式
    (1)保存、退出及字符串替换
    :
    (2) 操作
        保存      :w
        不保存退出      :q
        保存退出
            :wq
            :x
        强制      !
        设置密码并保存退出
            :X
            输入密码
            :wq
        取消密码
            :X
            enter 回车两次
            :wq
        设置行号   :set  nu  ( 退出后失效 )
        取消行号    :set nonu
        取消高亮    :nohl
        跳转到指定行    :行号
        字符串匹配替换
                全文替换
                        首个匹配替换  :%s/keyword/neword/
                        所有匹配替换   :%s/keyword/neword/g
               指定行替换
                         首个匹配替换  :指定行号s/keyword/neword/
                         所有匹配替换  :指定行号s/keyword/neword/g
               范围替换
                         首个匹配替换  :起始行号,结束行号s/keyword/neword/
                         所有匹配替换    :起始行号,结束行号s/keyword/neword/g


总结

今天学习的是文件管理的部分,标红的是必须要记住的,没有商量的余地;没有标红的同样也是很重要的,需要我们熟练掌握和运用。所以,无论如何都是要记住的重要内容。(很重要、很重要、很重要)

相关文章:

Linux目录结构与文件管理 (02)(四)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 一、查看文件内容 二、创建文件 三、删除文件 四、 移动文件 五、复制文件 六、编辑文件内容 总结 前言 今天是在昨天的基础上继续学习,主要…...

对1GHz脉冲多普勒雷达进行快速和慢速处理生成5个移动目标的距离多普勒图研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...

uni.uploadFile上传 PHP接收不到

开始这样,后端$file $request->file(file);接收不到 数据跑到param中去了 去掉Content-Type,就能接收到了 param只剩下...

2023年高教社杯 国赛数学建模思路 - 复盘:光照强度计算的优化模型

文章目录 0 赛题思路1 问题要求2 假设约定3 符号约定4 建立模型5 模型求解6 实现代码 建模资料 0 赛题思路 (赛题出来以后第一时间在CSDN分享) https://blog.csdn.net/dc_sinor?typeblog 1 问题要求 现在已知一个教室长为15米,宽为12米&…...

Netty简易聊天室

文章目录 本文目的参考说明环境说明maven依赖日志配置单元测试 功能介绍开发步骤 本文目的 通过一个简易的聊天室案例,讲述Netty的基本使用。同时分享案例代码。项目中用到了log4j2,junit5,同时分享这些基础组件的使用。项目中用到了awt&…...

Flutter Cannot run with sound null safety, because the following dependencies

flutter sdk 版本升级到2.0或者更高的版本后,运行之前的代码会报错 Error: Cannot run with sound null safety, because the following dependencies dont support null safety:- package:flutter_swiper- package:flutter_page_indicator- package:transformer_p…...

利用改进的遗传算法(种群隔离与个体迁移)mpi并行解决tsp问题

序 关于tsp问题的概述以及如何使用遗传算法进行求解已经在上一篇文章中说明了:遗传算法解决TSP问题. 但是,作为一种演化算法,遗传算法还存在着许多问题,比如早熟的情况,很容易在算法前期就已经收敛了,大量…...

【C++】—— C++11之线程库

前言: 在本期,我将给大家介绍的是 C11 中新引进的知识,即关于线程库的相关知识。 目录 (一)线程库的介绍 1、线程库的由来 2、线程库的简单介绍 (二)线程函数参数 (三&#xf…...

前端面试:【性能优化】前端缓存、CDN、懒加载和预加载

亲爱的前端开发者,Web性能对用户体验至关重要。如果你想让你的网站更快、更具吸引力,就需要关注前端性能优化。在这篇文章中,我们将深入探讨四个关键的性能优化策略:前端缓存、CDN(内容分发网络)、懒加载和…...

民族传统文化分享系统uniapp 微信小程序

管理员、用户可通过Android系统手机打开系统,注册登录后可进行管理员后端;首页、个人中心、用户管理、知识分类管理、知识资源管理、用户分享管理、意见反馈、系统管理,用户前端;首页、知识资源、用户分享、我的等。 本系统的使用…...

netty(二):NIO——处理可写事件

处理可写事件 什么情况下需要注册可写事件? 在服务端一次性无法把数据发送完的情况下,需要注册可写事件 服务端一次性是否能够把数据全部发送完成取决于服务端的缓冲区大小,该缓冲区不受程序控制 注册可写事件的步骤 判断ByteBuffer是否仍…...

PHP基本语法解析与应用指南

PHP(Hypertext Preprocessor)是一种广泛应用的开源脚本语言,特别适用于Web开发。本文将深入探讨PHP的基本语法,包括变量、数据类型、运算符、控制流等方面的内容。我们将详细介绍每个主题的基本概念、语法规则和常见应用&#xff…...

ICS PA1

ICS PA1 init.shmake 编译加速ISA计算机是个状态机程序是个状态机准备第一个客户程序parse_argsinit_randinit_loginit_meminit_isa load_img剩余的初始化工作运行第一个客户程序调试:零断点TUI 基础设施单步执行打印寄存器状态扫描内存 表达式求值词法分析递归求值…...

Java学数据结构(4)——散列表Hash table 散列函数 哈希冲突

目录 引出散列表Hash table关键字Key和散列函数(hash function)散列函数解决collision哈希冲突(碰撞)分离链接法(separate chaining)探测散列表(probing hash table)双散列(double hashing) Java标准库中的散列表总结 引出 1.散列表,key&…...

OVRL-V2: A simple state-of-art baseline for IMAGENAV and OBJECTNAV 论文阅读

论文信息 题目:OVRL-V2: A simple state-of-art baseline for IMAGENAV and OBJECTNAV 作者:Karmesh Yadav, Arjun Majumdar, Ram Ramrakhya 来源:arxiv 时间:2023 代码地址: https://github.com/ykarmesh…...

【安全】原型链污染 - Hackit2018

目录 准备工作 解题 代码审计 Payload 准备工作 将这道题所需依赖模块都安装好后 运行一下,然后可以试着访问一下,报错是因为里面没内容而已,不影响,准备工作就做好了 解题 代码审计 const express require(express) var hbs require…...

net.ipv4.ip_forward=0导致docker容器无法与外部通信

在启动一个docker容器时报错: WARNING: IPv4 forwarding is disabled. Networking will not work. 并且,此时本机上的其他容器的网络服务,只能在本机上访问,其他机器上访问不到。 原因: sysctl net.ipv4.ip_forward …...

软考高级系统架构设计师系列论文九十八:论软件开发平台的选择与应用

软考高级系统架构设计师系列论文九十八:论软件开发平台的选择与应用 一、相关知识点二、摘要三、正文四、总结一、相关知识点 软考高级系统架构设计师系列之:面向构件的软件设计,构件平台与典型架构二、摘要 本文讨论选择新软件开发平台用于重新开发银行中间业务系统。银行中…...

Springboot整合WebFlux

一、使用WebFlux入门 WebFlux整合MysqlWebFlux整合ESWebFlus整合MongdbWebFlus整合Redis 1、添加依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-webflux</artifactId><version>2.2.1.…...

uniapp 实现地图距离计算

在uniapp中实现地图距离计算可以借助第三方地图服务API来实现。以下是一种基本的实现方式&#xff1a; 注册地图服务API账号&#xff1a;你可以选择使用高德地图、百度地图等提供地图服务的厂商&#xff0c;注册一个开发者账号并获取API密钥。 安装相关插件或SDK&#xff1a;根…...

网络编程(Modbus进阶)

思维导图 Modbus RTU&#xff08;先学一点理论&#xff09; 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议&#xff0c;由 Modicon 公司&#xff08;现施耐德电气&#xff09;于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...

日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻

在如今就业市场竞争日益激烈的背景下&#xff0c;越来越多的求职者将目光投向了日本及中日双语岗位。但是&#xff0c;一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧&#xff1f;面对生疏的日语交流环境&#xff0c;即便提前恶补了…...

Linux链表操作全解析

Linux C语言链表深度解析与实战技巧 一、链表基础概念与内核链表优势1.1 为什么使用链表&#xff1f;1.2 Linux 内核链表与用户态链表的区别 二、内核链表结构与宏解析常用宏/函数 三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势5.1 插入效率5.2 安全…...

Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以?

Golang 面试经典题&#xff1a;map 的 key 可以是什么类型&#xff1f;哪些不可以&#xff1f; 在 Golang 的面试中&#xff0c;map 类型的使用是一个常见的考点&#xff0c;其中对 key 类型的合法性 是一道常被提及的基础却很容易被忽视的问题。本文将带你深入理解 Golang 中…...

智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql

智慧工地管理云平台系统&#xff0c;智慧工地全套源码&#xff0c;java版智慧工地源码&#xff0c;支持PC端、大屏端、移动端。 智慧工地聚焦建筑行业的市场需求&#xff0c;提供“平台网络终端”的整体解决方案&#xff0c;提供劳务管理、视频管理、智能监测、绿色施工、安全管…...

2024年赣州旅游投资集团社会招聘笔试真

2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...

Keil 中设置 STM32 Flash 和 RAM 地址详解

文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...

GitHub 趋势日报 (2025年06月08日)

&#x1f4ca; 由 TrendForge 系统生成 | &#x1f310; https://trendforge.devlive.org/ &#x1f310; 本日报中的项目描述已自动翻译为中文 &#x1f4c8; 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...

k8s业务程序联调工具-KtConnect

概述 原理 工具作用是建立了一个从本地到集群的单向VPN&#xff0c;根据VPN原理&#xff0c;打通两个内网必然需要借助一个公共中继节点&#xff0c;ktconnect工具巧妙的利用k8s原生的portforward能力&#xff0c;简化了建立连接的过程&#xff0c;apiserver间接起到了中继节…...

OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别

OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别 直接训练提示词嵌入向量的核心区别 您提到的代码: prompt_embedding = initial_embedding.clone().requires_grad_(True) optimizer = torch.optim.Adam([prompt_embedding...