1. tar
不可共存参数:
- -c :创建(create)包
- -x :解(extract)包
- -t :列出(list)包里面的文件
辅助参数:
- -z :用 gzip 压缩/解压缩,后缀为.gz
- -j :用 bzip2 压缩/解压缩,后缀为.bz2
- -v :显示压缩/解压缩的进度条
- -f :使用档名(注意:f后面不要接参数,也就是说-zxfv是不对的,要写成-zxvf)
打包到指定目录:
tar -cvf [指定目录]/[目标文件名].tar [一个或者多个原文件名/目录名]
解包到指定目录:
tar -xvf [原文件名].tar -C [指定目录]
创建压缩文件:
tar -zcvf [目标文件名].tar.gz [一个或者多个原文件名/目录名]
解压一个文件:
tar -zxvf [原文件名].tar.gz
2. rar
安装:apt-get install rar unrar # 一个压缩,一个解压
或者在 http://www.rarsoft.com/download.htm 找合适的版本,复制下载链接,
wget http://www.rarsoft.com/rar/rarlinux-x64-5.0.1.tar.gz
tar -zxf rarlinux-x64-5.0.1.tar.gz
cd rar
make
压缩:
rar a [目标文件名].rar [原文件名/目录名]
查看 rar 中的文件:
unrar l test.rar
解压到当前文件夹:
unrar e [原文件名].rar
解压到指定目录:
unrar x [原文件名].rar [指定目录]
举例:
将所有 .jpg 的文件压缩成一个 rar 包:rar a test.rar *.jpg
将文件夹 test 压缩成一个 rar 包:rar a test.rar test
将 test.rar 中的所有文件解压出来:unrar e test.rar
3. zip
压缩:
zip -r [目标文件名].zip [原文件/目录名]
解压到指定目录: (可能会受到大小限制,不支持大于2GB的文件)
unzip [原文件名].zip -d [指定目录]
举例:
将/home目录下面的test目录压缩为test.zip:zip -r test.zip home/test
将/home目录下面的test.zip解压到test目录里面:unzip home/tset.zip -d test
4. 7z 系列
建议不要在 Linux/Unix 上使用 7z(7-zip) 格式进行备份,因为它不存储文件的所有者/组,这些信息必须使用 tar 格式来备份。如果要将文件发送给其他用户,可以使用 7z 格式。
7z 使用插件处理格式文件;
7za 和 7zr 是独立可执行的,可以不需要其它任何插件来处理较少格式,7zr 只用来处理 7z 格式的文件。
4.1 7z
参数含义:
- x 代表解压缩文件,并且是按原始目录树解压
- -r 表示递归解压缩所有的子文件夹
- -o 是指定解压到的目录,-o后是没有空格的,直接接目录。这一点需要注意。
- a 代表添加文件/文件夹到压缩包
- -t 是指定压缩类型,这里定为7z,可不指定,因为7za默认压缩类型就是7z。
- -r 表示递归所有的子文件夹
压缩:
7z a [目标文件名].7z [原文件名/目录名]
解压到指定目录:
7z x [原文件名].7z -o[指定目录]
4.1 7za
压缩 / 解压缩:7z, XZ, BZIP2, GZIP, TAR, ZIP等
安装:apt-get install p7zip
或者用 wget 下载,
wget https://sourceforge.net/projects/p7zip/files/p7zip/16.02/p7zip_16.02_x86_linux_bin.tar.bz2
tar -xjvf p7zip_16.02_x86_linux_bin.tar.bz2
cd p7zip_16.02
sh install.sh
command操作命令:
- a 添加到压缩文件
- b 基准测试,测试7z当前性能
- d 从压缩文件中删除
- e 从压缩文件中解压缩,但不包含目录结构(即所有各级文件都解压到一个目录里)
- l 列出压缩文件的内容
- t 测试压缩文件
- u 更新文件到压缩文件
- x 从压缩文件中解压缩,包含目录结构
- r 递归压缩
压缩原文件到目标文件:
7za a [目标文件].7z [原文件/文件夹]
列出压缩文件中的内容:
7za l [原文件].7z
解压原文件到指定目录:
7za x [原文件名].7z -o[指定目录] # -o表示输出目录,其与目录路径之间没有空格
如果要生成 zip 压缩包,可以直接将压缩包名设为 .zip,就会使用 zip 算法压缩。