首页 > 代码库 > 压缩和解压缩命令
压缩和解压缩命令
【题注】涉及压缩格式:
tar、gzip、gunzip、bzip2、bunzip2、compress、uncompress、
zip、unzip、rar、unrar
试用文件注释:
.tar、.gz、.tar.gz、.tgz、.bz2、.tar.bz2、. Z、.tar.Z、.zip、.rar
【个人经验】
解压缩命令:
tar -d xxx.tar.xz
tar -xvf xxx.tar
tar -jxvf xxx.tar.bz2
tar -zxvf xxx.tar.gz
1 tar
1.1 命令详解:
主选项:
这五个是独立的命令,压缩解压都要只用到其中一个,可以和别的命令连用。下面的参数是根据需要在压缩或解压档案时可选的。
-c 压缩
-x 解压
-t 查看内容
-r 向压缩归档文件末尾追加文件
-u 更新原压缩包中的文件
辅助选项:
-b 该选项是为磁带机设定的。其后跟一数字,用来说明区块的大小。
-k 保存已经存在的文件。遇到相同的文件,不会进行覆盖。
-m 在还原文件时,把所有文件的修改时间设定为现在。
-M 创建多卷的档案文件,以便在几个磁盘中存放。
-v 详细报告tar处理的文件信息。如无此选项,tar不报告文件信息。
-w 每一步都要求确认。
-z 用gzip来压缩/解压缩文件。
参数-f是必须的
-f 使用档案名字,这个参数是最后一个参数,后面只能接档案名。
1.2 调用压缩程序:
1.2.1 gzip
# tar -czf all.tar.gz *.jpg 将所有.jpg文件打tar包,并用gzip压缩。
# tar -xzf all.tar.gz 解压拆包
1.2.2 bzip2
# tar -cjf all.tar.bz2 *.jpg 将所有.jpg的文件打成一个tar包,并用bzip2压缩。
# tar -xjf all.tar.bz2
1.2.3 compress 与 uncompress
# tar -cZf all.tar.Z *.jpg
# tar -xZf all.tar.Z
1.3 总结:
1.3.1 .tar结尾的文件
tar -xf all.tar
1.3.2 .gz结尾的文件
gzip -d all.gz
gunzip all.gz
1.3.3 .tgz或.tar.gz结尾的文件
tar -xzf all.tar.gz
tar -xzf all.tgz
1.3.4 .bz2结尾的文件
bzip2 -d all.bz2
bunzip2 all.bz2
1.3.5 .tar.bz2结尾的文件
tar -xjf all.tar.bz2
1.3.6 .Z结尾的文件
uncompress all.Z
1.3.7 .tar.Z结尾的文件
tar -xZf all.tar.z
1.3.8 .zip结尾的文件
# zip all.zip *.jpg 将所有.jpg的文件压缩成一个zip包
# unzip all.zip 将all.zip中的所有文件解压出来
1.3.9 .rar结尾的文件
要在linux下处理.rar文件,需要安装RAR 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中的所有文件解压出来
2 zip 与 unzip
2.1 压缩
zip -r filename.zip ./* 将当前目录下所有文件和文件夹压缩成filename.zip文件
-r 表示递归压缩子目录下文件。
zip -d filename.zip file.txt 删除压缩包中file.txt文件
zip -m filename.zip ./file.txt 添加file.txt文件
zip -r filename.zip file1 file2 file3 /home 将三个文件打包filename.zip放到/home目录下
2.2 解压
unzip -o -d /home filename.zip 将filename.zip文件解压缩到/home目录下,
-o 不提示覆盖文件
-d /home 指定解压目录