记录一些常用的压缩和解压命令。
注:为方便描述本文的例子均是将 temp/ 目录压缩为 temp.xxx 文件。
1 .zip
$ zip -r temp.zip temp/
$ unzip temp.zip
常用参数说明:
| 参数 | 说明 |
|---|
| -m | 将文件压缩并加入压缩文件后,删除原始文件 |
| -q | 不显示指令执行过程 |
| -r | 递归压缩,将指定目录下的所有文件和子目录全部压缩 |
| -S | 包含系统和隐藏文件 |
| -t<日期时间> | 把压缩文件的日期设成指定的日期 |
| -v | 显示指令执行过程或显示版本信息 |
| -X | 不保存额外的文件属性 |
| -y | 保存符号连接,而非该链接所指向的文件(Linux ) |
2 .tar
$ tar cvf temp.tar temp/
$ tar xvf temp.tar
常用参数说明:
| 参数 | 说明 |
|---|
| -A | 新增压缩文件到已存在的压缩 |
| -c | 建立新的压缩文件 |
| -f | 使用文件名,作为最后一个参数,后面只能接文件名 |
| -r | 添加文件到已经压缩的文件 |
| -x | 从压缩的文件中提取文件 |
| -t | 显示压缩文件的内容 |
| -z | 支持 gzip 解压文件 |
| -j | 支持 bzip2 解压文件 |
| -Z | 支持 compress 解压文件 |
| -v | 显示操作过程 |
| -k | 保留原有文件不覆盖 |
| -m | 保留文件不被覆盖 |
3 .rar
$ rar a temp.rar temp/
$ rar x temp.rar
常用参数说明:
| 参数 | 说明 |
|---|
| a | 添加文件到操作文档 |
| d | 从文档中删除文件 |
| e | 将文件解压到当前目录 |
| s | 转换文档成自解压文档 |
| x | 带路径解压文档中内容到当前目录 |
| -df | 文档操作后删除源文件 |
| -ed | 不添加空目录 |
4 .gz
$ gzip temp/
$ gunzip temp.gz
$ gunzip -d temp.gz
常用参数说明:
| 参数 | 说明 |
|---|
| -c | 结果输出到标准输出,原文件保持不变 |
| -d | uncompress 解压 |
| -k | 压缩或者解压过程中,保留原文件 |
5 .tar.gz & .tgz
$ tar zcvf temp.tar.gz temp/
$ tar zxvf temp.tar.gz
常用参数说明:
6 .bz2
$ bzip2 -z temp/
$ bzip2 -d temp.bz2
$ bunzip2 temp.bz2
常用参数说明:
| 参数 | 说明 |
|---|
| -c | 将结果送到标准输出 |
| -d | 执行解压缩 |
| -f | 在压缩或解压缩时,若输出文件与现有文件名相同,使用该选项,可覆盖文件 |
| -k | 在压缩或解压缩后,会删除原文件;若要保留原文件,使用该选项 |
| -v | 压缩或解压缩文件时,显示详细的信息 |
| -z | 强制执行压缩 |
7 .tar.bz2
$ tar jcvf temp.tar.bz2 temp/
$ tar jxvf temp.tar.bz2
8 .bz
$ bzip2 -d temp.bz
$ bunzip2 temp.bz
9 .tar.bz
$ tar jxvf temp.tar.bz
10 .tar.xz
$ xz -d temp.tar.xz
$ tar xvf temp.tar
11 .Z
$ compress temp/
$ uncompress temp.Z
12 .tar.Z
$ tar Zcvf temp.tar.Z temp/
$ tar Zxvf temp.tar.Z
13 .lha
$ lha -a temp.lha temp/
$ lha -e temp.lha
14 .rpm
$ rpm2cpio temp.rpm | cpio -div
15 .deb
$ ar p temp.deb temp.tar.gz | tar zxf -