更新时间:2022-10-02 16:28:54
1.关于压缩
在Linux上常见的压缩文件格式有:gzip,bzip2,xz,zip等。 gzip-->.gz bzip2-->.bz2 xz-->.xz zip-->.zip。 gzip,bzip2,xz只支持对文件进行压缩,zip支持对目录进行压缩。 gzip出现的早,然后是bzip2,然后是xz。它们的压缩比慢慢变大。 |
2.常用压缩命令的使用
gzip
说明:
|
bzip2
说明:
|
xz 同上面的用法. xz xxx xz -d xxx.xz unxz xxx.xz xzcat xxx.xz |
zip
|
3.归档:tar
注意到,很多时候,我们希望对多个文件或者目录进行gzip,bzip2,xz压缩,但是gzip/bzip2/xz又仅仅支持单文件压缩,那么怎么办呢?我们可以先将多个文件或者目录整合成一个文件,然后就可以对其进行压缩了。把多个文件整合的过程就是归档,即archive.而tar就是一个这样的工具。
实例:
1
2
3
4
5
6
7
8
9
10
11
12
|
[root@localhost test ] # tar -cf 1.tar mtab fstab
[root@localhost test ] # ls -l
total 84 -rw-r--r-- 1 root root 10240 Jul 2 05:37 1. tar
-rw-r--r-- 1 root root 952 Jul 2 05:23 1.zip -rw-r--r-- 1 root root 5342 Jul 2 05:24 2.zip -rw-r--r-- 1 root root 532 Jul 2 05:23 fstab -rw-r--r-- 1 root root 898 Jul 1 23:10 inittab.bz2 -rw-r--r-- 1 root root 900 Jul 1 23:10 inittab.xz -rw-r--r-- 1 root root 1666 Jul 1 22:51 inittab2 -rw-r--r-- 1 root root 318 Jul 2 05:23 mtab drwxr-xr-x 2 root root 4096 Jul 2 05:24 profile |
1
2
3
4
5
6
7
8
9
10
11
12
|
[root@localhost test ] # tar -xf 1.tar
[root@localhost test ] # ls -l
total 84 -rw-r--r-- 1 root root 10240 Jul 2 05:37 1. tar
-rw-r--r-- 1 root root 952 Jul 2 05:23 1.zip -rw-r--r-- 1 root root 5342 Jul 2 05:24 2.zip -rw-r--r-- 1 root root 532 Jul 2 05:23 fstab -rw-r--r-- 1 root root 898 Jul 1 23:10 inittab.bz2 -rw-r--r-- 1 root root 900 Jul 1 23:10 inittab.xz -rw-r--r-- 1 root root 1666 Jul 1 22:51 inittab2 -rw-r--r-- 1 root root 318 Jul 2 05:23 mtab drwxr-xr-x 2 root root 4096 Jul 2 05:24 profile |
说明:
-x表示展开归档,-c表示create archive,-f指定archive filename。
归档时,可以指定一些属性,比如有些文件具有ACL扩展属性,那么可以使用--xattrs。
对多个文件先归档,然后进行压缩,这样的话,需要分两步,可否一步完成。tar可以调用压缩工具的。如:
tar -czf .... 表示先归档,然后gzip压缩
tar -cjf .... 表示先归档,然后bzip2压缩
1
2
3
4
5
6
7
|
[root@localhost test ] # tar -jcf 3.tar.bz2 fstab inittab2
[root@localhost test ] # ls -l
total 1112 -rw-r--r-- 1 root root 10240 Jul 2 05:37 1. tar
-rw-r--r-- 1 root root 952 Jul 2 05:23 1.zip -rw-r--r-- 1 root root 5342 Jul 2 05:24 2.zip -rw-r--r-- 1 root root 1181 Jul 2 18:34 3. tar .bz2
|
如果我们想对xxx.tar.gz,xxx.tar.bz2,xxx.tar.xz进行解压缩+展开归档的话,可以一步调用tar完成。如tar -xf xxx.tar.gz。因为tar可以自动识别后缀名然后调用解压工具完成解压操作。
同样的,如果不想展开归档,只是想查看下的话,-t选项即可。