1 压缩
1.1 compress
compress 是非常古老的压缩命令,早已弃用,写在这里只因考虑历史的进程。它的专属后缀名为 .Z 。注意: compress 会删除原始文件!
[root@www ~]# compress [-crv] filename_or_pathname
[root@www ~]# uncompress filename.Z
-c 将压缩后的数据传入标准输出。
-r 子目录下的文件也进行压缩。
-v 显示压缩前后的信息。
1.2 gzip
gzip 是应用最广的压缩命令。gzip 压缩文件后缀名为 .gz ,能解开 compress 、 zip 与 gzip 压缩的文件。 Windows 下的 WinRar 也支持解压缩 gzip 压缩文件。注意:与 compress 一样, gzip 会删除原始文件或目录!
[root@www ~]# gzip [-cvt#] filename
[root@www ~]# gzip -d filename.gz
-c 显示压缩过程。
-v 显示压缩结果。
-t 检验一致性。
-# 压缩等级。 -1 最快,压缩比最差; -9 最慢,压缩比最好;默认 -6 。
-d 解压缩。
纯文本的 .gz 压缩文件可以用 zcat 命令直接查看。
[root@www ~]# zcat filename.gz
1.3 bzip2
如果说 gzip 取代了 compress ,那么 bzip2 就是取代了 gzip 。bzip2 压缩比更佳,而且用法与 gzip 几乎相同!
[root@www ~]# bzip2 [-ctv#] filename
[root@www ~]# bzip2 -d filename.gz
-c 显示压缩过程。
-v 显示压缩结果。
-k 保留原始文件。
-t 检验一致性。
-# 压缩等级。 -1 最快,压缩比最差; -9 最慢,压缩比最好;默认 -6 。
-d 解压缩。
包括 bzcat 的用法也和 zcat 一致:
[root@www ~]# bzcat filename.bz2
1.4 xz
略。
2 打包
2.1 tar
虽然 gzip 与 bzip2 也能够针对目录来进行压缩, 不过它们对目录的压缩是对目录内所有文件分别压缩! 这与 WinRar 将好多文件打包并压缩成一个文件不同。
Linux 下的打包命令是 tar 。 tar 最初设计目的是将文件备份到磁带上 tape archive ,因此得名。 tar 可以将多个目录或文件打包成一个大文件,同时用 gzip 和 bzip2 压缩大文件! tar 的选项与参数非常的多,这里只列几个常用的:
[root@www ~]# tar [-j|-z] [cv] [-f filename.tar.bz2] filename...
[root@www ~]# tar [-j|-z] [tv] [-f filename.tar.bz2]
[root@www ~]# tar [-j|-z] [xv] [-f filename.tar.bz2] [-C pathname]
-j 用 bzip2 进行压缩/解压缩,压缩文件后缀名 `*.tar.bz2`
-z 用 gzip 进行压缩/解压缩,压缩文件后缀名 `*.tar.gz`
-c 创建打包文件
-t 查看打包文件
-x 解开打包文件。
-v 显示打包的过程与结果。
-f 被打包的文件。
-C 解压缩的目录。
注意: -c, -t, -x 不能同时出现!
再精简一下:
tar -cv -f filename.tar filename_or_pathname
tar -cvj -f filename.tar.bz2 filename_or_pathname
tar -tvj -f filename.tar.bz2
tar -xvj -f filename.tar.bz2 [-C pathname]
没有压缩的称为 tarfile ,有压缩的称为 tarball 。
很多文章往往将压缩命令写成 -cvjf filename.tar.bz2
,这是对的,因为选项顺序理论上可以变换,但这导致不少读者会误认为 -vjfc filename.tar.bz2
也行,而事实上这样写会致产生的文件名为 c
的压缩文件!所以建议单列 -f filename.tar.bz2
,比较保险。
为了保证解包时本地文件的安全性,所有文件都使用相对路径打包,并发出警告:
tar: Removing leading '/' from member names
2.2 rar
rar 全称 RoshalARchive , Roshal 是作者的姓氏。 rar 最初用于 DOS ,现已移植到其它平台,且公开了源代码。 官方网站 提供所有版本的下载地址。
3 备份和恢复
dump 和 restore 。
4 烧录
待续。