Linux上打包、压缩、解压的命令很多,如下是不同后缀的压缩、解压命令。
tar
tar xvf FileName.tar # 解包 tar cvf FileName.tar DirName # 打包
注:tar是打包,不是压缩!
.gz
gunzip FileName.gz # 解压1 gzip -d FileName.gz # 解压2 gzip FileName # 压缩
.tar.gz 和 .tgz
tar zxvf FileName.tar.gz # 解压 tar zcvf FileName.tar.gz DirName # 压缩
.bz2
bzip2 -d FileName.bz2 # 解压1 bunzip2 FileName.bz2 # 解压2 bzip2 -z FileName # 压缩
.tar.bz2
tar jxvf FileName.tar.bz2 # 解压 tar jcvf FileName.tar.bz2 DirName # 压缩
.bz
bzip2 -d FileName.bz # 解压1 bunzip2 FileName.bz # 解压2 bzip2 -z FileName # 压缩
.tar.bz
tar axvf FileName.tar.bz # 解压 tar acvf FileName.tar.bz DirName # 压缩
.Z
uncompress FileName.Z # 解压 compress FileName # 压缩
.tar.Z
tar Zxvf FileName.tar.Z # 解压 tar Zcvf FileName.tar.Z DirName # 压缩
.zip
unzip FileName.zip # 解压 zip FileName.zip DirName # 压缩
.rar
rar x FileName.rar # 解压 rar a FileName.rar DirName # 压缩
.lha
lha -e FileName.lha # 解压 lha -a FileName.lha FileName # 压缩
.rpm
rpm2cpio FileName.rpm | cpio -div # 解包
.deb
ar p FileName.deb data.tar.gz | tar zxf - # 解压
tar.xz
tar xvJf FileName.tar.xz # 解压
sEx
sEx调用相关程序,实现压缩解压这些文件:.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 # 压缩
gzip 命令
减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间。
gzip
是在 Linux 系统中经常使用的压缩和解压缩的命令,既方便又好用。
语法:
gzip [选项] 压缩(解压缩)的文件名
该命令的各选项含义如下:
-c
将输出写到标准输出上,并保留原有文件。-d
将压缩文件解压。-l
对每个压缩文件,显示下列字段:压缩文件的大小;未压缩文件的大小;压缩比;未压缩文件的名字-r
递归式地查找指定目录并压缩其中的所有文件或者是解压缩。-t
测试,检查压缩文件是否完整。-v
对每一个压缩和解压的文件,显示文件名和压缩比。-num
用指定的数字 num 调整压缩的速度,-1
或--fast
表示最快压缩方法(低压缩比),-9
或--best
表示最慢压缩方法(高压缩比)。系统缺省值为 6。
指令实例:
gzip *%
把当前目录下的每个文件压缩成 .gz 文件。gzip -dv *%
把当前目录下每个压缩的文件解压,并列出详细的信息。gzip -l *%
详细显示例1中每个压缩的文件的信息,并不解压。gzip usr.tar%
压缩 tar 备份文件 usr.tar,此时压缩文件的扩展名为.tar.gz。
参考资料: