目录和文件管理、Vi文本编辑器

目录

一、Linux目录结构

1.Linux文件系统的层次结构

2.常见的子目录及其作用

二、查看及检索文件

1.查看文件内容

1.1  cat命令——显示并连接文件的内容

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

注意:more命令包括下面的“less”等命令,可以配合管道符“|”分屏查看执行命令时输出的信息

例如:

1.3命令less——查看文件内容(与more命令相同,但扩展功能更多)

1.4命令head,tail——查看文件内容

(1)head命令

(2)tail命令(与head作用相反)

2.检索和过滤文件内容

2.1grep命令——检索和过滤文件内容

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

3.扩展

3.1paste命令——用于合并文件的列

3.2split命令——分割文件

三、备份及恢复文档

1.压缩命令gzip,bzip

2.解压命令gunzip,bunzip2

3.归档命令tar(作用:归档)

四、VI文本编辑器


一、Linux目录结构

1.Linux文件系统的层次结构

目录相当于Windows中的文件夹,目录存放的既可以是文件,也可以是子目录,而文件中存储的是信息。

文件系统的最顶层是由根目录开始的,根目录是所有分区,目录,文件等位置的起点。整个树形目录结构中,使用独立的“/”表示根目录。

注意:

  • 目录名或文件名是区分大小写的。
  • 在文件系统中,有两个特殊的目录:一个是用户所在的工作目录,即当前目录,用一个“.”来表示;另一个是当前目录的上一个目录,即父目录,用两个“.”来表示。
  • 如果一个目录或文件名是由一个点开始的,就表示这个目录或文件是一个隐藏目录或文件。至于为什么会有隐藏文件,主要原因有三点:
  1. 防止意外删除
  2. 一般是你不需要改动的文件
  3. 属于系统文件

2.常见的子目录及其作用

  • /root:该目录Linux系统管理员root(超级用户)的宿主目录
  • /home:存放所有普通用户的宿主目录
  • /boot:系统内核,启动文件目录
  • /dev:设备文件,如/dev/hda1,/dev/cdrom等
  • /etc:配置文件,存放人员的账号密码文件,各种服务的起始文件等
  • /bin:所有用户可执行的命令
  • /sbin:管理员可执行的管理命令
  • /usr:应用程序
  • /var:存放系统重经常需要变化的文件,如系统日志文件,用户邮箱目录等

二、查看及检索文件

1.查看文件内容

1.1  cat命令——显示并连接文件的内容

格式:cat  【选项】 文件名

优缺点:

  • 优点:只能看普通的文本文件
  • 缺点:如果内容过多会显示不全

示例:查看文本内容

[root@admin wanganmin]#echo "hello world" >wam.txt

[root@admin wanganmin]#cat wam.txt

hello world

cat可以同时查看多项文件

[root@admin wanganmin]#cat wam.txt sam.txt
hello world
qqq
1.2  命令more——全屏方式分页显示文件内容命令

格式:more  【选项】 文件名

交互操作方式:

  1. 按Enter键向下逐行滚动
  2. 按空格键向下翻一屏
  3. 按b键向上翻一屏
  4. 按q键退出

示例:显示用户密码

[root@admin wanganmin]#sudo more /etc/shadow
root:$6$rsS7LKa7eTaX/GiA$968aAyIMBpsk41bMVWDY1h44KRhAdfin6gncra5SAwro5skyxTU33r
Zs3JD75HtHQAKb19Nlzs1rXUO.F1gif/::0:99999:7:::
bin:*:17110:0:99999:7:::
daemon:*:17110:0:99999:7:::
注意:more命令包括下面的“less”等命令,可以配合管道符“|”分屏查看执行命令时输出的信息
例如:
[root@localhost ~]# ls -lh /etc/*.conf | more
-rw-r--r--. 1 root root	55 11 月 5 00:29 /etc/asound.conf
-rw-r--r--. 1 root root 14K 11 月 6 02:19 /etc/autofs.conf
-rw-------. 1 root root 232 11 月 6 02:19 /etc/autofs_ldap_auth.conf
-rw-r--r--. 1 root root 22K 11 月 6 01:31 /etc/brltty.conf
…… //省略部分内容
--more--
1.3命令less——查看文件内容(与more命令相同,但扩展功能更多)

格式:less 【选项】  文件名

交互方式:

  1. Page Up向上翻页,Page Down向下翻页
  2. 按“/”键查找内容,“n”下一个内容,“N”上一个内容
  3. 其他功能与more命令基本类似

示例:显示用户密码,并查找与f有关的内容

[root@admin wanganmin]# sudo less /etc/shadow

1.4命令head,tail——查看文件内容
(1)head命令

格式:head -n 文件名 //查看文件开头的一部分内容(n为任意数,默认是10行) 

 示例:查看前6行的密码

[root@admin wanganmin]# sudo head -6 /etc/shadow
root:$6$rsS7LKa7eTaX/GiA$968aAyIMBpsk41bMVWDY1h44KRhAdfin6gncra5SAwro5skyxTU33rZs3JD75HtHQAKb19Nlzs1rXUO.F1gif/::0:99999:7:::
bin:*:17110:0:99999:7:::
daemon:*:17110:0:99999:7:::
adm:*:17110:0:99999:7:::
lp:*:17110:0:99999:7:::
sync:*:17110:0:99999:7:::
(2)tail命令(与head作用相反)

格式1:tail -n 文件名   //查看文件结尾少部分内容(默认是10行)

格式2:tail -f 文件名   //显示最后几行并追踪心得文件内容 

示例:查看末尾6行的密码

[root@admin wanganmin]# sudo tail -6 /etc/shadow
avahi:!!:19905::::::
postfix:!!:19905::::::
sshd:!!:19905::::::
tcpdump:!!:19905::::::
wanganmin:$6$movA63XSNc5s1Hr6$wuoRI30uZpzupj1PRexDfdpPy6m/T6MBqFHsLYZ3d0uoa8Sf/KVnR/e7HGWfc5bC9YYyqrM/GvEJJ3QUqONW7.::0:99999:7:::
anmin1:$6$iHYS3rdZ$6nL6xZoDQTelQT7gNbX23hq41u4D9OyinY.q7mhyLfx2wXF0H.7zmZ7JeeriZMhvNCADRSvYckMzeFbCqNhfJ/:19915:0:99999:7:::

2.检索和过滤文件内容

2.1grep命令——检索和过滤文件内容

格式:grep 【选项】 ……查找条件 目标文件

常用命令选项:

  • -i  :  查找是忽略大小写
  • -v :反向查找,输出与查找条件不相符的行

查找条件的设置:

  • 要查找的字符串用双引号括起来
  • “^……”表示以……开头,“……$”表示以……结尾
  • “^$”表示空行

示例:查找密码里面含有bin的信息

[root@admin wanganmin]# sudo more /etc/shadow | grep "bin"
bin:*:17110:0:99999:7:::
2.2wc命令——统计文件中的单词数量等信息

格式:wc 【选项】 ……目标文件……

常用的命令选项:

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

3.扩展

3.1paste命令——用于合并文件的列

格式:paste 【选项】 ……目标文件 ……

常见的命令选项:

  • -s :串列进行而非平行进行
  • -d<间隔字符>:用指定的间隔字符取代跳格字符
  • -help:在线帮助
  • -version:显示帮助信息

示例:串列合并

[root@admin wanganmin]# cat sam.txt
lisi  120
[root@admin wanganmin]# cat wam.txt
zhangsan  200
[root@admin wanganmin]# paste -s wam.txt sam.txt 
zhangsan  200
lisi  120
3.2split命令——分割文件

格式:split 【选项】 文件名

选项:

  • -c 行数:指定每多少行切成一个小文件
  • -b 字节:每多少个字节切成一个小文件

面试题:

我有一个10g的文件,怎么分割成小的文件存储?

split -b 100M 文件名 

三、备份及恢复文档

1.压缩命令gzip,bzip

格式:gzip  【选项】  文件名  //生成的文件名后缀是gz

        bzip2   【选项】 文件名  //将文件压缩后,文件名后缀是bz2

常用选项:

-n:数字1到9,9是最高级别

-d:解压缩选项

区别:

  • gzip 的压缩速度比 bzip2 快,但是压缩效果不如 bzip2。
  • bzip2 的压缩速度比 gzip 慢,但是压缩效果更好。
  • gzip 只使用一个 CPU 内核,而 bzip2 可以使用多个 CPU 内核进行压缩和解压缩。
  • gzip 更广泛地用于 Web 应用程序,而 bzip2 更适用于数据备份和归档。
  • bzip2 只能压缩单个文件,不能打包多个文件。

2.解压命令gunzip,bunzip2

gunzip等价于gzip -d

bunzip2等价于bzip -d

3.归档命令tar(作用:归档)

格式:tar 【选项】 ……归档文件名  源文件或目录

           tar【选项】……归档文件名 【-c 目标目录】

注意:

  1. tar -zcvf加-要在最后加f
  2. tar fzcv压缩包的名字(*.tar.gz)需要压缩的文件

选项:

  • -c:创建(Create).tar 格式的包文件。
  • -C:解压时指定释放的目标文件夹。
  • -f:表示使用归档文件。
  • -j:调用 bzip2 程序进行压缩或解压。
  • -p:打包时保留文件及目录的权限。
  • -P:打包时保留文件及目录的绝对路径。
  • -t:列表查看包内的文件。
  • -v:输出详细信息(Verbose)。
  • -x:解开.tar 格式的包文件。
  • -z:调用 gzip 程序进行压缩或解压。

注意:有八个最常用的选项

  • czvf    //创建.tar的包文件,调用gzip程序,输出详细信息,并且使用归档文件
  • cjvf     //与上一个选项有区别的是调用bzip2程序
  • xzvf    //与第一个选项有区别的是解开.tar格式的包文件,并没有创建
  • xjvf     //与xzvf同理
  • czf      //其实和第一个选项大差不差
  • cjf                               
  • xzf
  • xjf

四、VI文本编辑器

4.1使用vi文本编辑器

4.1.1文本编辑器的作用
  • 创建和修改文本文件
  • 维护Linux系统中的各种配置文件
4.1.2Linux中最常用的文本编辑器
  • vi 是类 UNIX 操作系统的默认文本编辑器。
  • vim 是 vi 文本编辑器(简称 vi 编辑器)的增强版本,在 vi 编辑器的基础上扩展了很多实用的功能,但是习惯上也将 vim 称为 vi。为了使用方便,可以设置一个命令别名,将 vi 指向 vim 程序(本书中以 vim 程序为例),具体操作如下:

[root@localhost ~]# alias vi='/usr/bin/vim'
[root@localhost ~]# which -a vi vim
alias vi='/usr/bin/vim'
/usr/bin/vim
/usr/bin/vi
/usr/bin/vim

4.2.vi编辑器的工作模式

4.2.1工作模式

有三种,分别是:

  • 命令模式:格式以vi打开一个文件就直接进入一般命令模式了。在这个模式中,你可以使用【上下左右】的按键来移动光标,也可以使用【删除字符】或者【删除整行】来处理文件内容,还可以使用【复制、粘贴】来处理你的文件内容。
  • 输入模式:一般命令模式中可以进行删除、复制、粘贴等操作,但是无法编辑文件内容。要等你按下【i,L,o,O,a,A,r,R】等任何一个字母之后才进入编辑模式。如果你要回到一般的命令模式,按下【ESC】即可退出编辑模式
  • 末行模式:一般模式当中,输入【:/?】三个中的任何一个按钮,就可以将光标移动到最下面的一行。在这个模式中,可以【查找数据】的操作,可以读取、保存、批量替换字符、退出vi、显示行号的操作都是在这个模式下完成的。

注意:a键——光标位置后面输入内容        A——光标所在的行尾插入内容

           i键——光标位置之前输入内容          I——光标所在行首插入内容

           o键——光标另起一行输入内容         O——在光标上面一行输入内容

4.3.vi编辑器的基本操作

4.3.1光标移动
  • 方向移动:直接按↑、↓、←、→四个方向键完成相应的光标移动。
  • 翻页:按 Page Down 键向下翻动一整页内容,按 Page Up 键向上翻动一整页内容。
  • 行内快速跳转:按 Home 键或^键、数字 0 键将光标快速跳转到本行的行首。
                             按 End 键或$键将光标快速跳转到本行的行尾。
  • 行间快速跳转:使用按键命令 1G 或者 gg 可跳转到文件内容的第 1 行。使用按键命令 G 可跳转到文件的最后一行。使用按键命令#G 可跳转到文件中的第#行(其中“#”号用具体数字替换)。        
  • 行号显示::set nu是在编辑器中显示行号,:set nonu取消编辑器中的行号显示

补充:

  1. w——跳到下一个单词
  2. b——跳到上一个单词
  3. H——当前屏幕第一行
  4. M——当前屏幕中间
  5. L——当前屏幕最后一行
4.3.2复制、粘贴、和删除
4.3.2.1删除操作
  • 操作键x键或者Delete键删除光标处的单个字符
  • 操作键dd删除当前光标所在行,使用#dd的形式还可以删除从光标处开始的#行内容(#号用具体数字替换)
  • 操作按键命令 d^删除当前光标之前到行首的所有字符。
  • 操作按键命令 d$删除当前光标处到行尾的所有字符。
4.3.2.2复制操作
  • 操作按键命令 yy 复制当前行整行的内容到剪贴板
  • 操作按键命令#yy 的形式还可以复制从光标处开始的#行内容(其中“#”号用具体数字替换)
4.3.2.3粘贴操作
  • 小写p——将缓冲区中的内容粘贴到光标位置处之后
  • 大写P——将缓冲区中的内容粘贴到光标位置处之前。

补充:

  • r            修改当前字符
  • ctrl+r       反撤销(撤销u操作)
4.3.3查找文件内容

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

4.3.4撤销编辑及保存和退出
  • 小写u 键命令用于取消最近一次的操作,并恢复操作结果,可以多次重复按 u 键恢复已进行的多步操作
  • 大写U 键命令用于取消对当前行所做的所有编辑。
4.3.5末行模式中的基本操作

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

4.3.5.1保存文件及退出vi编辑器
  • :w——保存修改的文件
  • :w 路径文件名——若需要另存为其他文件,则需要指定新的文件名,必要时还可以指定文件路径。例如,  执行如下的“:w /root/newfile” 操作将把当前编辑的文件另存到/root 目录下, 文件名为newfile。
  • :q!——退出编辑器
  • :wq——保存并退出
  • :x——保存并退出
4.3.5.2打开新文件或读入其他文件内容
  • 格式:e  新的文件——打开新文件并进行编辑
  • 格式:r 其他文件——在当前文件中读入其他文件
4.3.5.3文件替换内容
  • :s   /字符串1/字符串2                 #将当前行中找到的第一个字符串1替换成字符串2
  • :s   /字符串1/字符串2/g              #将当前行中所有字符串1替换成字符串2
  • :#,# s /字符串1/字符串2/g          #在指定行数范围内的文件内容中进行查找并替换

  • :% s /字符串1/字符串2/g            #在整个文件内容中进行查找并替换

  • 13
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值