从零开始学习Linux(十):压缩解压缩命令

1、gzip

1.1、压缩

命令作用:压缩文件
命令格式:gzip [文件名]

对目录执行压缩命令:

gzip zhoujielun/

执行结果报错,提示zhoujielun/是一个目录,如下图所示:

对文件执行压缩命令:

gzip zhoujielun/faruxue

如上图所示:首先查看zhoujielun/目录下面有多少个文件,发现有faruxue和qinghuaci两个文件。执行命令压缩faruxue这个文件,并重新查看zhoujielun/目录下面文件信息。发现只有faruxue.gz文件,没有faruxue文件了。

gzip命令压缩特点:

  • 压缩后格式为.gz;
  • 只能压缩文件,不能压缩目录;
  • 压缩后原始文件不保留;
1.2、解压缩

gzip -d [压缩包名],解压缩gz格式的压缩包。执行命令:

gzip -d faruxue.gz

2、gunzip

命令作用:解压缩.gz的压缩文件
命令格式:gunzip [压缩文件名称]

gunzip faruxue.gz

解压缩后,.gz文件会被源文件替换掉。


3、tar

3.1、压缩

命令作用:打包压缩目录
命令格式:tar [-zcvf] [压缩后的文件名] [目录]
参数说明:

  • -z 打包同时压缩;
  • -c 打包;
  • -v 显示详细信息;
  • -f 指定文件名;

将song/zhoujielun文件夹,整体打包并且同时压缩。执行命令:

tar -zcvf zhoujielun.tar.gz zhoujielun/

执行结果如下图所示:

从图中可以看到,执行打包压缩命令后,原始目录依然存在,新生成了一个 .tar.gz文件。

3.2、解压缩

命令作用:解压缩文件
命令格式:tar [-zxvf] [压缩文件名] -C [目标目录]
参数说明:

  • -z 解压缩;
  • -x 解包;
  • -v 显示详细信息;
  • -f 指定解压文件名;

注意:要解压缩的目标目录必须存在才可以。

将zhoujielun.tar.gz 文件解压缩到目录jay下面,执行命令:

tar -zxvf zhoujielun.tar.gz -C /tmp/song/jay/

命令执行结果,如下图所示:

4、zip

命令作用:压缩文件或目录
命令格式:zip [-r] [压缩后的文件名] [文件或目录]
参数说明:

  • -r:压缩目录

对文件进行压缩,执行命令:

zip suyan.zip xusong/suyan

对目录xusong进行压缩,执行命令:

zip xusong.zip xusong/

执行命令并未报错,执行结果如下图所示:

此时压缩出来的压缩包并非同我们想象中的一样,将xusong整个目录以及目录里面所有的文件打包。而只是将xusong目录打包而已。

想要将整个目录以及里面的文件一起打包,需要增加参数 -r。执行命令:

zip -r xusong.zip xusong/

从图中可以看到将xusong/、xusong/suyan、xusong/duanqiaocanxue全部添加到压缩包了。

zip压缩会保留源文件,而且也会提示压缩比。zip命令的压缩比不如gzip。命令压缩后的格式zip。

5、unzip

命令作用:解压.zip格式的压缩文件;
命令格式:unzip [压缩文件] -d [目标目录]

解压缩文件到当前目录,执行命令:

unzip xusong.zip

执行结果如下图所示:


再次执行解压缩命令到当前目录下面,此时会提示是否要覆盖之前的文件。如下图所示:

解压缩文件到指定目录,执行命令:

unzip xusong.zip -d xusong01

目标目录不存在也是可以成功执行的。

6、bzip2

命令作用:压缩文件;
命令格式:bzip2 [-k] [文件]
参数说明:

  • -k:保留源文件;

执行压缩文件命令:

bzip2 faruxue

执行结果,源文件被删除只保留了压缩文件。

执行压缩文件命令:

bzip2 -k qinghuaci

整个执行结果,如下图所示:

7、bunzip2

命令作用:
命令格式: bunzip2 [-k] [压缩文件名]
参数说明:

  • -k:保留压缩包;

直接解压文件,不保留压缩文件,执行命令:

bunzip2 faruxue.bz2

解压文件,同时保留压缩文件,执行命令:

bunzip2 -k qinghuaci.bz2 

你可能感兴趣的:(从零开始学习Linux(十):压缩解压缩命令)