Linux压缩解压的相关命令总结

Linux下常用压缩格式的压缩与解压方法

tar格式(.tar)(注:tar是打包,不是压缩!)
解包: tar xvf FileName.tar
打包:tar cvf FileName.tar DirName
.gz
解压1:gunzip FileName.gz
解压2:gzip -d FileName.gz
压缩:gzip FileName
.tar.gz
解压:tar zxvf FileName.tar.gz
压缩:tar zcvf FileName.tar.gz DirName
---------------------------------------------
.bz2
解压1:bzip2 -d FileName.bz2
解压2:bunzip2 FileName.bz2
压缩: bzip2 -z FileName
.tar.bz2
解压:tar jxvf FileName.tar.bz2
压缩:tar jcvf FileName.tar.bz2 DirName
---------------------------------------------
.bz
解压1:bzip2 -d FileName.bz
解压2:bunzip2 FileName.bz
压缩:未知
.tar.bz
解压:tar jxvf FileName.tar.bz
压缩:未知
---------------------------------------------
.Z
解压:uncompress FileName.Z
压缩:compress FileName
.tar.Z
解压:tar Zxvf FileName.tar.Z
压缩:tar Zcvf FileName.tar.Z DirName
---------------------------------------------
.tgz
解压:tar zxvf FileName.tgz
压缩:未知
.tar.tgz
解压:tar zxvf FileName.tar.tgz
压缩:tar zcvf FileName.tar.tgz FileName
---------------------------------------------
.zip
解压:unzip FileName.zip
压缩:zip FileName.zip DirName
---------------------------------------------
.deb
安装: dpkg -i FileName.deb
解压:dpkg-deb --fsys-tarfile FileName.deb | tar xvf - ar p file.deb data.tar.gz | tar xvzf -
---------------------------------------------
.rar
解压:rar a FileName.rar
压缩:rar e FileName.rar

rar请到:http://www.rarsoft.com/download.htm 下载!
解压后请将rar_static拷贝到/usr/bin目录(其他由$PATH环境变量指定的目录也可以):
[root@www2 tmp]# cp rar_static /usr/bin/rar

---------------------------------------------
.lha
解压:lha -e FileName.lha
压缩:lha -a FileName.lha FileName

lha请到:http://www.infor.kanazawa-it.ac.jp/.../lhaunix/下载!
>解压后请将lha拷贝到/usr/bin目录(其他由$PATH环境变量指定的目录也可以):
[root@www2 tmp]# cp lha /usr/bin/

---------------------------------------------
.rpm
安装: rpm -ivh FileName.rpm
解压:rpm2cpio FileName.rpm | cpio -div

.src.rpm
安装: rpmbuild --rebuild FileName.src.rpm

---------------------------------------------
.a
解压:#tar xv FileName.a
---------------------------------------------
.cpio.gz/.cgz
解压:gzip -dc FileName.cgz | cpio -div
---------------------------------------------
.cpio/cpio
解压1:cpio -div FileName.cpio 或cpio -divc FileName.cpio
解压2:cpio -idmv < FileName.cpio /你想指定的目录/
---------------------------------------------
.tar .tgz .tar.gz .tar.Z .tar.bz .tar.bz2 .zip .cpio .rpm .deb .slp .arj .rar .ace .lha .lzh
.lzx .lzs .arc .sda .sfx .lnx .zoo .cab .kar .cpt .pit .sit .sea


解压:sEx x FileName.*
压缩:sEx a FileName.* FileName


****************************************************

tar在linux上是常用的打包、压缩、加压缩工具,这仅仅列举常用的压缩与解压缩参数

参数:
-c  建立新的归档文件
-r  向归档文件末尾追加文件
-x  从归档文件中解出文件
-O  将文件解开到标准输出
-v  处理过程中输出相关信息
-f  对普通文件操作
-z  调用gzip来压缩归档文件,与-x联用时调用gzip完成解压缩
-Z  调用compress来压缩归档文件,与-x联用时调用compress完成解压缩 

举例:
一,将整个/home/www/images 目录下的文件全部打包为 /home/www/images.tar
[root@xoaocom ~]# tar -cvf /home/www/images.tar /home/www/images ← 仅打包,不压缩
[root@xoaocom ~]# tar -zcvf /home/www/images.tar.gz /home/www/images ← 打包后,以gzip压缩

在参数f后面的压缩文件名是自己取的,习惯上用tar来做,如果加z参数,则以tar.gz 或tgz来代表gzip压缩过的tar file文件


二,将 /home/www/images.tar.gz 解压到/home/www下面
[root@xoaocom ~]# cd /home/www
[root@xoaocom ~]# tar -zxvf /home/images.tar.gz

解压到指定的目录
[root@xoaocom ~]# tar -zxvf /home/images.tar.gz -C ../tt

解包到指定的目录
tar xvf filename.tar -C /specific_dir


****************************************************

解压cpio文件


cpio -idmv < filename.cpio
同样可以解压img文件:
cpio -idmv < filename.img
cpio 备份命令
备份:cpio -covB > [file|device] 将数据备份到文件或设备上
还原:cpio -icduv < [file|device} 将数据还原到系统中
常用参数:
-o   :将数据copy到文件或设备上
-i    :将数据从文件或设备上还原到系统中
-t    :查看cpio建立的文件或设备内容
-c   :一种比较新的portable format方式存储
-v   :在屏幕上显示备份过程中的文件名
-B   :让预设的blocks可以增加到5120bytes,默认是512bytes,这样可以使备份速度加快
-d   :自动建立目录,这样还原时才不会出现找不到路径的问题
-u   :更新,用较新的文件覆盖旧的文件
cpio常与find 配合使用


****************************************************

XZ压缩最新压缩率之王


xz这个压缩可能很多都很陌生,不过您可知道xz是绝大数linux默认就带的一个压缩工具。
之前xz使用一直很少,所以几乎没有什么提起。
我是在下载phpmyadmin的时候看到这种压缩格式的,phpmyadmin压缩包xz格式的居然比7z还要小,这引起我的兴趣。
最新一段时间会经常听到xz被采用的声音,像是最新的archlinux某些东西就使用xz压缩。不过xz也有一个坏处就是压缩时间比较长,比7z压缩时间还长一些。不过压缩是一次性的,所以可以忽略。


xz压缩文件方法或命令
xz -z 要压缩的文件
如果要保留被压缩的文件加上参数 -k ,如果要设置压缩率加入参数 -0 到 -9调节压缩率。如果不设置,默认压缩等级是6.
xz解压文件方法或命令
xz -d 要解压的文件
同样使用 -k 参数来保留被解压缩的文件。


创建或解压tar.xz文件的方法
习惯了 tar czvf 或 tar xzvf 的人可能碰到 tar.xz也会想用单一命令搞定解压或压缩。其实不行 tar里面没有征对xz格式的参数比如 z是针对 gzip,j是针对 bzip2。

创建tar.xz文件:只要先 tar cvf xxx.tar xxx/ 这样创建xxx.tar文件先,然后使用 xz -z xxx.tar 来将 xxx.tar压缩成为 xxx.tar.xz

解压tar.xz文件:先 xz -d xxx.tar.xz 将 xxx.tar.xz解压成 xxx.tar 然后,再用 tar xvf xxx.tar来解包。

相关推荐