Linux下的压缩解压缩

来源:互联网 发布:php sysvmsg windows 编辑:程序博客网 时间:2024/04/29 12:39

Linux 相比于 Windows 有一个好处,就是自带压缩解压缩命令,但是我发现很多刚接触 Linux 系统的新手经常会纠结于如何压缩解压缩,这里,我整理一些常见用法以供大家参考。

常用压缩格式
tar.gz
bz2
zip
rar

tar

Linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的。生成tar包后,就可以用其它的程序来进
行压缩了,所以首先就来讲讲tar命令的基本用法:

zip

linux下提供了zip和unzip程序,zip是压缩程序,unzip是解压程序。

1、把/home目录下面的mydata目录压缩为mydata.zip
zip -r mydata.zip mydata #压缩mydata目录
2、把/home目录下面的mydata.zip解压到mydatabak目录里面
unzip mydata.zip -d mydatabak
3、把/home目录下面的abc文件夹和123.txt压缩成为abc123.zip
zip -r abc123.zip abc 123.txt
4、把/home目录下面的wwwroot.zip直接解压到/home目录里面
unzip wwwroot.zip
5、把/home目录下面的abc12.zip、abc23.zip、abc34.zip同时解压到/home目录里面
unzip abc*.zip
6、查看把/home目录下面的wwwroot.zip里面的内容
unzip -v wwwroot.zip
7、验证/home目录下面的wwwroot.zip是否完整
unzip -t wwwroot.zip
8、把/home目录下面wwwroot.zip里面的所有文件解压到第一级目录
unzip -j wwwroot.zip
主要参数
-c:将解压缩的结果
-l:显示压缩文件内所包含的文件
-p:与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换
-t:检查压缩文件是否正确
-u:与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其它文件解压缩到目录中
-v:执行是时显示详细的信息
-z:仅显示压缩文件的备注文字
-a:对文本文件进行必要的字符转换
-b:不要对文本文件进行字符转换
-C:压缩文件中的文件名称区分大小写
-j:不处理压缩文件中原有的目录路径
-L:将压缩文件中的全部文件名改为小写
-M:将输出结果送到more程序处理
-n:解压缩时不要覆盖原有的文件
-o:不必先询问用户,unzip执行后覆盖原有文件
-P:使用zip的密码选项
-q:执行时不显示任何信息
-s:将文件名中的空白字符转换为底线字符
-V:保留VMS的文件版本信息
-X:解压缩时同时回存文件原来的UID/GID

rar

要在linux下处理.rar文件,需要安装RAR for Linux,可以从网上下载,但要记住,RAR for Linux不是免费的;可从http://www.rarsoft.com/download.htm下载RAR 3。60 for Linux ,然后安装其安装操作如下:

# tar -xzpvf rarlinux-3.2.0.tar.gz# cd rar# make

这样就安装好了,安装后就有了rar和unrar这两个程序,rar是压缩程序,unrar是解压程序。它们的参数选项很多,举例说明一下其用法

# rar a all *.jpg

这条命令是将所有.jpg的文件压缩成一个rar包,名为all.rar,该程序会将.rar 扩展名将自动附加到包名后。

# unrar e all.rar

这条命令是将all.rar中的所有文件解压出来

现在很多找到的软件都是tar.xz的格式的,xz 是一个使用 LZMA压缩算法的无损数据压缩文件格式。 和gzip与bzip2一样,同样支持多文件压缩,但是约定不能将多于一个的目标文件压缩进同一个档案文件。 相反,xz通常作为一种归档文件自身的压缩格式,例如使用tar或cpioUnix程序创建的归档。

xz utils 是 lzma utils 的下一代lzma utils 改名 xz utils。

压缩时 xz utils 耗时比 bzip2 长一倍,

压缩时 xz utils 耗时是 lzma utils 一半,

压缩时 xz utils 生成文件体积是 bzip2 的一半,

压缩时 xz utils 生成文件体积比 lzma utils 略大,

解压时 xz utils 耗时是 bzip2 的三分之一,

解压时 xz utils 速度比 lzma utils 略快,

解压时 xz utils 耗时仅比 gzip 多一倍。

压缩时 xz utils 使用 .xz 格式 生成文件 比 .lzma 格式 略大,

测试样本较小,多次测试结果有出入,无法判断 xz utils 使用 .xz 与 .lzma 格式 压缩与解压时间 谁占优势。

到目前为止,lzma utils 的压缩率仍是最大的,xz utils 解压时间占优势。

一个 xz 文件格式的实现XZ 实用程序已可在网上自由获得。GNU tar自版本1.22起使用这一软件透明支持xz文件格式(就如同其处理gzip格式或者bzip2格式一样)。 随着大量软件进入了公有领域(例如 liblzma等) 程序的4.999.9beta版本实现在GNU LGPL 和 GNU GPL条款下发布。

0 0