【Linux】目录和文件管理(二)

本文详细介绍了Linux系统中常用的文件压缩和解压缩命令,包括gzip、bzip2、tar和zip的使用方法,以及vi文本编辑器的基本操作和工作模式。通过示例展示了如何进行文件压缩、解压缩以及创建和编辑文本文件。


三、压缩及解压缩文件

gzip命令——压缩命令

  gzip是GNUzip的缩写,最早用于UNIX系统的文件压缩。HTTP协议上的gzip编码是一种用来改进web应用程序性能的技术,web服务器和客户端(浏览器)必须共同支持gzip。目前主流的浏览器,Chrome,firefox,IE等都支持该协议。常见的服务器如Apache,Nginx,IIS同样支持gzip。

1.基本语法

制作压缩文件的命令格式

gzip [选项] 文件名 ...

常用命令选项范围为1~9,使用"-9"选项可以提高压缩的比率。

指令的值为1时压缩速度最快,最低的压缩质量。指令的值为9时最慢的压缩速度,压缩率最高。其默认值为6,压缩速度和压缩质量较为平衡的值。

解开压缩文件的命令格式

gzip [选项] .gz格式的压缩文件

常用命令选项为-d

注意:gunzip等价于gzip -d,用法也基本上相同

gunzip .gz格式的压缩文件

2.常用格式

使用gzip命令压缩、解压缩abc.txt文件

//使用gzip命令压缩abc.txt文件
[root@host ~]# gzip -9 abc.txt
[root@host ~]# ls
1.txt  abc.txt.gz       initial-setup-ks.cfg  模板  文档  桌面
2.txt  anaconda-ks.cfg  movie                 视频  下载
3.txt  bols             公共                  图片  音乐
//使用gzip命令解压缩abc.txt文件
[root@host ~]# gzip -d abc.txt.gz 
[root@host ~]# ls
1.txt  abc.txt          initial-setup-ks.cfg  模板  文档  桌面
2.txt  anaconda-ks.cfg  movie                 视频  下载
3.txt  bols             公共                  图片  音乐

使用gunzip命令解压缩abc.txt文件

//使用gzip命令压缩abc.txt文件
[root@host ~]# gzip -9 abc.txt
[root@host ~]# ls
1.txt  abc.txt.gz       initial-setup-ks.cfg  模板  文档  桌面
2.txt  anaconda-ks.cfg  movie                 视频  下载
3.txt  bols             公共                  图片  音乐
//使用gunzip命令解压缩abc.txt文件
[root@host ~]# gunzip abc.txt.gz 
[root@host ~]# ls
1.txt  abc.txt          initial-setup-ks.cfg  模板  文档  桌面
2.txt  anaconda-ks.cfg  movie                 视频  下载
3.txt  bols             公共                  图片  音乐

bzip2命令——压缩命令

  使用Burrows-Wheeler块排序文本压缩算法,将文件进行压缩,压缩比率比一般算法高一些。bzip2要求命令行标志附带一个文件名列表。每个文件都被自己的压缩版本替换,名称为“original_name.bz2”。每个压缩文件与相应的原始文件具有相同的修改日期、权限和所有权(如果可能的话),因此可以在解压缩时正确地还原这些属性。

1.基本语法

制作压缩文件的命令格式

bzip2 [选项] 文件名 ...

常用命令选项范围为1~9,使用"-9"选项可以提高压缩的比率。

指令的值为1时压缩速度最快,最低的压缩质量。指令的值为9时最慢的压缩速度,压缩率最高。其默认值为6,压缩速度和压缩质量较为平衡的值。

解开压缩文件的命令格式

bzip2 [选项] .bz2格式的压缩文件

常用命令选项为-d

注意:bunzip2等价于bzip2 -d,用法也基本上相同

bunzip2 .bz2格式的压缩文件

2.常用格式

使用bzip命令压缩、解压缩abc.txt文件

//使用bzip命令压缩abc.txt文件
[root@host ~]# bzip2 -9 abc.txt
[root@host ~]# ls
1.txt  abc.txt.bz2      initial-setup-ks.cfg  模板  文档  桌面
2.txt  anaconda-ks.cfg  movie                 视频  下载
3.txt  bols             公共                  图片  音乐
//使用bzip2 -d命令解压缩abc.txt文件
[root@host ~]# bzip2 -d abc.txt.bz2 
[root@host ~]# ls
1.txt  abc.txt          initial-setup-ks.cfg  模板  文档  桌面
2.txt  anaconda-ks.cfg  movie                 视频  下载
3.txt  bols             公共                  图片  音乐

使用bunzip2命令解压缩abc.txt文件

//使用bzip命令压缩abc.txt文件
[root@host ~]# bzip2 -9 abc.txt
[root@host ~]# ls
1.txt  abc.txt.bz2      initial-setup-ks.cfg  模板  文档  桌面
2.txt  anaconda-ks.cfg  movie                 视频  下载
3.txt  bols             公共                  图片  音乐
//使用bunzip2命令解压缩abc.txt文件
[root@host ~]# bunzip2 abc.txt.bz2 
[root@host ~]# ls
1.txt  abc.txt          initial-setup-ks.cfg  模板  文档  桌面
2.txt  anaconda-ks.cfg  movie                 视频  下载
3.txt  bols             公共                  图片  音乐

tar命令——归档命令

  最初设计用于将文件打包到磁带上,现在我们大都使用它来实现备份某个分区或者某些重要的目录)是类 Unix 系统中使用最广泛的命令;

  用于归档多个文件或目录到单个归档文件中,并且归档文件可以进一步使用 gzip 或者 bzip2 等技术进行压缩。换言之,tar 命令也可以用于备份:先是归档多个文件和目录到一个单独的 tar 文件或归档文件,然后在需要之时将 tar 文件中的文件和目录释放出来。

1.基本语法

制作归档文件的命令格式

tar [选项] ... 归档文件名 源文件或目录

释放归档文件的命令格式

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

2.基本参数

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

3.常用格式

创建一个 tar 归档文件

创建一个 tar 文件,将所有以.txt结尾的文件全都压缩到里面

[root@host ~]# tar -czvf abc.tar.gz *.txt
1.txt
2.txt
3.txt
abc.txt
[root@host ~]# ls
1.txt  2.txt  3.txt  abc.tar.gz  abc.txt  anaconda-ks.cfg  bols  initial-setup-ks.cfg  movie  mytest.tar  公共  模板  视频  图片  文档  下载  音乐  桌面
[root@host ~]# 

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7WEw3kTt-1680087677795)(C:\Users\86138\AppData\Roaming\Typora\typora-user-images\image-20230329175100918.png)]

列出归档文件中的内容

[root@host ~]# tar -tvf abc.tar.gz 
-rw-r--r-- root/root        27 2023-03-29 12:26 1.txt
-rw-r--r-- root/root         9 2023-03-29 13:37 2.txt
-rw-r--r-- root/root         8 2023-03-29 13:39 3.txt
-rw-r--r-- root/root        30 2023-03-29 15:30 abc.txt

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dq11EvJI-1680087677796)(C:\Users\86138\AppData\Roaming\Typora\typora-user-images\image-20230329175251998.png)]

释放 tar 文件到指定目录

[root@host ~]# tar -xvf abc.tar.gz  -C test
1.txt
2.txt
3.txt
abc.txt

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sq9H0xOo-1680087677796)(C:\Users\86138\AppData\Roaming\Typora\typora-user-images\image-20230329175757165.png)]

zip命令——压缩命令

  zip命令可以用来解压缩文件,或者对文件进行打包操作。zip是个使用广泛的压缩程序,文件经它压缩后会另外产生具有“.zip”扩展名的压缩文件。

1.基本语法

zip命令的格式为

zip [选项] 文件名.zip  /xxx/路径xxx/文件

unzip命令的格式为

unzip [选项] 文件名.zip

2.基本参数

选项含义
-d从压缩文件内删除指定的文件

3.常用格式

创建一个zip的压缩文件

压缩1.txt和2.txt文件,并重命名tset.zip

[root@host ~]# zip tset.zip 1.txt 2.txt
  adding: 1.txt (deflated 4%)
  adding: 2.txt (stored 0%)
[root@host ~]# ls
1.txt  abc.tar.gz       bols                  mytest.tar  公共  图片  音乐
2.txt  abc.txt          initial-setup-ks.cfg  test        模板  文档  桌面
3.txt  anaconda-ks.cfg  movie                 tset.zip    视频  下载

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TIHlQgQb-1680087677796)(C:\Users\86138\AppData\Roaming\Typora\typora-user-images\image-20230329180904902.png)]

解压缩一个zip的压缩文件

解压tset.zip至指定test目录下

[root@host ~]# unzip tset.zip -d test/
Archive:  tset.zip
  inflating: test/1.txt              
 extracting: test/2.txt    

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-juS74Pnr-1680087677797)(C:\Users\86138\AppData\Roaming\Typora\typora-user-images\image-20230329181352476.png)]

四、vi文本编辑器

1.简介

  vi 编辑器是所有 Unix 及 Linux 系统下标准的编辑器,类似于 windows 系统下的 notepad (记事本)编辑器,由于在 Unix 及 Linux 系统的任何版本,Vi 编辑器是完全相同的,因此可以在其他任何介绍 vi 的地方都能进一步了解它,Vi 也是 Linux 中最基本的文本编辑器,学会它后,我们将在 Linux 的世界里畅通无阻,尤其是在终端中。

  vi 和 vim 都是 Linux 中的编辑器,不同的是,vim 比较高级,可以视为 vi 的升级版本。vi 使用于文本编辑,但是 vim 更适用于 coding。

  vi/vim作用:能够创建文件 ,进行文件内容的修改

2.工作模式

vi编辑器主要分三种工作模式,分别是命令模式、输入模式、末行模式。

  • 命令模式:启动vi编辑器后默认进入命令模式,该模式中主要完成如光标移动、字符串查找,以及删除、复制、粘贴文件内容等相关操作
  • 输入模式:该模式中主要的操/作就是录入文件内容,可以对文本文件正文进行修改、或者添和加新的内容。处于输入模式时,vi编辑器的最后一行会出现”–INSERT–“的状态提示信息
  • 末行模式:该模式中可以设置vi编辑环境、保存文件、退出编辑器,以及对文件内容进行查找、替换等操作。处于末行模式时,vi编辑器的最后一行会出现冒号":"提示符

vi工作模式之间的切换

  • 如果要从命令模式转换到编辑模式,可以输入命令a或者i
  • 如果需要从文本模式返回,则按下Esc键即可。
  • 在命令模式下输入:即可切换到末行模式,然后输入命令。
  • vi 编辑器的 3 种模式的转换如下图所示。

在这里插入图片描述

3.基本语法

vi编辑器的命令格式:

[root@localhost ~ ]# vi 文件名

4.基本参数

命令模式切换至输入模式:

选项作用
a当前光标位置之后插入内容
i当前光标位置之前插入内容
o光标所在行之下插入一个新行内容
O光标所在行之上插入一个新行内容
A所在行的行插入内容
I所在行的行首插入内容

在命令模式中基本操作

操作类型操作键作用
翻页操作Page Down键或 Ctrl + F向下翻动一整页内容
Page Up键或Ctrl + B向上翻动一整页内容
行内快速跳转Home键或^键、数字0键跳转到本行的行首
End键或者$键跳转到本行的行尾
行间快速跳转1G或者gg转到文件内容的第一行
G跳转到文件内容的最后一行
#G跳转到文件的第#行(#用具体的数字替换)
M跳转到当前页的中间位置
删除替换字符x或Delete键删除光标处的单个字符
dd删除光标所在行(有剪切功能)
#dd删除光标开始的#行内容
d^删除当前光标之前到行首的所有字符
d$删除当前光标处到行尾的所有字符
dw删除当前光标处的整个单词
R或Shift+r替换当前光标处字符
复制yy复制当前行整行的内容到剪切板
#yy复制当前光标处开始#行内容到剪切板
粘贴p粘贴到光标所在行之下
P大写P粘贴到光标所在行之上
?word从当前光标处开始向前进行查找字符串“word”
n定位下一个匹配的被查找字符串
N定位上一个匹配的被查找字符串
撤销u撤销上次命令(可一直对回到最初)
U为对其他行进行修改默认撤回当前行编辑,对其他行进行修改只会撤回上一次操作的所在行

末行模式中的操作

操作类型操作键作用
显示行号:set nu在编辑器中显示行号
:set nonu在编辑器中关闭行号显示
保存退出:w保存修改内容
:q退出修改内容不保存
:q!强制退出
:w /位置/新文件名另存为其他文件
ZZ 或:wq或:x保存并退出
打开新文件:e+其他文件名在编辑器里面在此打开一个新文件进行编辑
导入文件内容:r+其他文件名在当前文件中进行其他文件内容的导入
文件内容替换: s /old/new替换当前行所在的第一个字符
:s /old/new/g将当前行中找到的所有字符进行替换
:#,# s/old/new/g将#,#行中找到的所有的字符进行替换
:% s/old/new/g将全文中所有查找到的字符进行替换
: s /old/new/c对每个替换进行用户确认
复制/剪切/粘:5,10 m 15将5-10行的内容剪切到15行下面
:5,10 co 15将5-10行的内容复制到15行下面
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我的宝贝大唐

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值