Linux目录和文件管理详解(内含实操图)(二)

知识结构:

Linux目录结构
查看及检索文件
备份及恢复文档
vi文本编辑器


(一)Linux目录结构

登录Linux,在命令行界面输入ls / 我们会看到这些目录

[root@localhost ~]# ls /

微信截图_20190813133850.png

树形目录结构

微信截图_20190813133850.png

根目录:
   所有分区,目录,文件等的位置起点
   整个树形目录结构中,使用独立的一个/表示
常见的子目录:
   /root (系统管理员root的宿主目录)
   /bin   (所有用户可执行的命令)
   /boot (系统内核,启动文件)
   /dev   (设备文件)
   /etc    (配置文件)
   /home(普通用户的宿主目录)
   /var    (系统日志文件)
   /usr    (应用程序)
   /sbin  (管理员可执行的管理命令)
   /proc (硬件配置信息)
   /tmp  (临时文件)
   /lib    (函数库)
   /media(多媒体)

 

(二)查看及检索文件

1,显示出文件内容—cat命令

cat [选项] 文件...

优劣:用于一般的简短的文本文件,偏长的文本文件会无法全部查看

例:

微信截图_20190813133850.png

2,全屏方式分页显示文件内容—more命令

more [选项] 文件...

优劣:可以查看文件篇幅较多的文本文件,可以上下翻页浏览,但是在浏览到最后的时候会自动的退出

例:

微信截图_20190813133850.png

交互操作方法:

enter键向下逐行滚动
空格键向下翻页
b键回看

q退出

3,与more命令相同,但扩展功能更多—less命令

less [选项] 文件..

例:

微信截图_20190813133850.png

按/查找内容n下一个内容N上一个内容

微信截图_20190813133850.png

交互操作方法:

交互pageup,pagedown向上向下翻页
按/查找内容n下一个内容N上一个内容

4,查看文件开头的一部分内容(默认为10行)—head命令

head [选项] 文件

head -n:查看文件开头多少行的内容

例如:

微信截图_20190813133850.png

5,查看文件结尾的少部分内容(默认为10行)—tail命令

tail [选项] 文件

tail -n:显示文件结尾多少行的内容不过
tail -f:会把文件里的最尾部的内容显示在屏幕上,并且不断刷新,只要 filename 更新就可以看到最新的文件内
容。
例:

微信截图_20190813133850.png

6,统计文件中的单词数量等信息—wc命令

wc [选项] 文件

-l:统计行数
-w:统计单词个数
-c:统计字节数

例:

微信截图_20190813133850.png

7,在文件中查找并显示包含指定字符串的行—grep命令

grep [选项] 查找条件 目标文件

-i:查找是忽略大小写
-v:反转查找,输出与查找条件不相符的行
查找条件设置
    要找的字符串以双一号括起来
    "^..."表示以...开头 "...$"表示以...结尾
    "^$"空行

:(1)查找/etc/passwd下的可登陆的用户

微信截图_20190813133850.png

(2)利用反向查找显示不可登陆的用户

微信截图_20190813133850.png

(3)查找以root为开头的用户

微信截图_20190813133850.png

(三)备份及恢复文档

1,压缩解压—gzip bzip2

gzip [选项] 文件
bzip2 [选项] 文件

劣势:压缩会将源文件直接压缩成压缩包,不保留源文件

-9:创建
-d:解压

例:

微信截图_20190813133850.png

2,制作归档文件,释放归档文件—归档命令tar命令

tar [选项] ...归档文件名 源文件或目录
tar [选项] ...归档文件名 -C目标路径

-c:创建压缩包
-x:解压
-v:显示详细信息
-f:执行
-p:保留原有权限
-t:查看压缩包内容
-C:解压目标路径
-z:gzip格式
-j:bzip2格式

例:

微信截图_20190813133850.png

(四)vim文本编辑器
文本编辑器的作用:
       创建或修改文本文件
       维护Linux系统中的各种配置文件
Linux中常用的文本编辑器:
       vi:类Unix操作系统的默认文本编辑器
       vim:vim是一个类似于Vi的著名的功能强大、高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性。三种工作模式(所有模式切换都要经过命令模式)

三种模式:

命令模式:启动 vi 编辑器后默认进入命令模式。该模式中主要完成如光标移动、 字符串查找,以及删除、复制、粘贴文件内容等相关操作。 

输入模式:该模式中主要的操作就是录入文件内容,可以对文本文件正文进行修 改或添加新的内容。处于输入模式时,vi 编辑器的最后一行会出现“-- INSERT --” 的状态提示信息。

末行模式:该模式中可以设置 vi 编辑环境、保存文件、退出编辑器,以及对文件 内容进行查找、替换等操作。处于末行模式时,vi 编辑器的最后一行会出现 冒号“:”提示符。

a,i,o,O命令模式切换到输入模式 esc返回命令模式
:命令模式切换到末行模式  esc返回命令模式

命令模式中的基本操作

1.模式切换 在命令模式中,按 a、i、o 等键可以快速切换至输入模式,同时确定插入点的方式和位 置,以便录入文件内容。需要返回命令模式时,按 Esc 键即可。常见的几个模式切换键及其 作用如下。

a:在当前光标位置之后插入内容。

A:在光标所在行的末尾(行尾)插入内容。

i:在当前光标位置之前插入内容。

I:在光标所在行的开头(行首)插入内容。

o:在光标所在行的后面插入一个新行。 

O:在光标所在行的前面插入一个新行。

M:跳转到屏幕的中间

微信截图_20190813133942.png

2.移动光标

(1)光标方向的移动:直接按↑、↓、←、→四个方向键完成相应的光标移动。

(2)翻页移动:按 Page Down 键或 Ctrl+F 组合键向下翻动一整页内容。 按 Page Up 键或 Ctrl+B 组合键向上翻动一整页内容。

(3)行内快速跳转:按 Home 键或^键、数字 0 键将光标快速跳转到本行的行首。 按 End 键或$键将光标快速跳转到本行的行尾。 在上述按键操作中,Page Down、Page Up、Home、End 键及方向键同样也可在 vi 的输 入模式中使用。

(4)行间快速跳转:使用按键命令 1G 或者 gg 可跳转到文件内容的第 1 行。 使用按键命令 G 可跳转到文件的最后一行。 使用按键命令#G 可跳转到文件中的第#行(其中“#”号用具体数字替换)。

(5)行号显示:只要切换到末 行模式并执行如下的“:set nu”命令即可显示行号,执行“:set nonu”命令可以取消显示

微信截图_20190813133850.png

3.复制、粘贴和删除
删除操作:
按 x 键或 Delete 键删除光标处的单个字符。
使用按键命令 dd 删除当前光标所在行,使用#dd 的形式还可以删除从光标处开始的#行内容(其中“#”号用具体数字替换)。
使用按键命令 d^删除当前光标之前到行首的所有字符。
使用按键命令 d$删除当前光标处到行尾的所有字符。

复制操作:
使用按键命令 yy 复制当前行整行的内容到剪贴板,使用#yy 的形式还可以复制从光标处开始的#行内容(其中“#”号用具体数字替换)。复制的内容需
要粘贴后才能使用。

粘贴操作:
在 vi 编辑器中,前一次被删除或复制的内容将会保存到剪切板缓冲区
中,按 p 键即可将缓冲区中的内容粘贴到光标位置处之后,按 P 键则会粘贴到光标
位置处之前。

补充:
dw:删除一个单词
ddp:换行

4.查找文件内容
在命令模式中,按/键后可以输入指定的字符串,从当前光标处开始向后进行查找(按?键则向前查找)。完成查找后可以按n、N键在不同的查找结果中进行选择。

例如:

微信截图_20190813133850.png

5.撤销编辑及保存和退出
在对文件内容进行编辑时,有时候需要对一些失误的编辑操作进行撤销,这时可以使用按键命令 u、U 键。

u 键命令用于取消最近一次的操作,并恢复操作结果,可以多次重复按 u 键恢复已进行的多步操作;

U 键命令用于取消对当前行所做的所有编辑。
当需要保存当前的文件内容并退出 vi 编辑器时,可以使用按键命令 ZZ。


命令模式中的基本操作

在命令模式中按:键可以切换到末行模式,vi 编辑器的最后一行中将显示“:”提示符, 用户可以在该提示符后输入特定的末行命令,完成如保存文件、退出编辑器、打开新文件、 读取其他文件内容及字符串替换等丰富的功能操作。

1.保存文件及退出 vi 编辑器

保存文件:对文件内容进行修改并确认以后,需要执行如下的“:w”命令进行保存。

若需要另存为其他文件,则需要指定新的文件名,必要时还可以指定文件路径。例如, 执行如下的“:w /root/newfile”操作将把当前编辑的文件另存到/root 目录下,文件名为 newfile。

退出编辑器:需要退出 vi 编辑器时,可以执行“:q”命令。若文件内容已经修改 却没有保存,则仅使用“:q”命令将无法成功退出,这时需要使用如下的“:q!” 命令强行退出(不保存即退出)。

保存并退出:既要保存文件又要退出 vi 编辑器可以使用一条末行命令“:wq”或“:x” 实现,其效果与命令模式中的 ZZ 命令相同

2.打开新文件或读入其他文件内容

:e ~/install.log 打开新的文件进行编辑
:r /etc/filesystems  在当前文件中读入其他文件内容

3.替换文件内容

在vi编辑器的末行模式中,能够将文件中特定的字符串替换成新的内容,当需要大批 量修改同一内容时,使用替换功能将大大提高编辑效率。

:s /old/new       将当前行中查找到的第一个字符“old”串替换为“new”
:s /old/new/g     将当前行中查找到的所有字符“old”替换为“new”
:#,# s/old/new/g  在行号“#,#”范围内替换所有的字符串“old”为“new”
:% s/old/new/g    在整个文件范围内替换所有的字符串“old”为“new”
:s /old/new/c     在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认

微信截图_20190813133850.png

微信截图_20190813133942.png

微信截图_20190813171716.png

补充:shift+r:替换对应字符

补充内容:

>:重定向

>>:追加文件

1,>: 会重写文件,如果文件里面有内容会覆盖。

2,>>这个是将输出内容追加到目标文件中。如果文件不存在,就创建文件。

3,>>:追加文件,也就是如果文件里面有内容会把新内容追加到文件尾。

4,>   是定向输出到文件,如果文件不存在,就创建文件;如果文件存在,就将其清空。

echo 指令是用于字符串的输出

例如:

微信截图_20190813172421.png


   |:管道

命令格式:命令A|命令B,即命令A的正确输出作为命令B的操作对象

微信截图_20190813172839.png

例如:查找/etc/passwd中能够登陆的用户并统计有多少个用户

微信截图_20190813173005.png


总结:

使用cat,more,less,head,tail命令可以查看文件

使用wc,grep命令可以统计,检索文件内容

使用gzip,bzip2命令可以制作及释放压缩文件,使用tar命令可以制作或释放归档文件,结合“-z”“-j”选项还能够自动调用压缩工具。

vi,vim是一个全屏幕的文件编辑器,包括命令模式,输入模式,末行模式三种使用状态




猜你喜欢

转载自blog.51cto.com/14080162/2429238