仅针对当前目录下的压缩文件给出示例代码(Mac和Linux代码适用)。
部分参数补充解释
在介绍具体的命令行示例之前,先说明一些常用的参数的含义:
-p密码
后接压缩文件的密码,-p
与密码
间不存在空格-o目标文件夹
解压到目标文件夹,若不存在会创建,可避免出现双重压缩下的同名压缩文件冲突。注意-o
与目标文件夹
之间不存在空格(不同解压文件可能有细微差别,建议用前利用man
命令进行查询)
注意,以下代码其实大同小异,这里给出是为了方便直接套用,也仅给出最简单的代码示例,有特殊需要的话请按自身需求修改。
解压命令示例
tar
由于受到 DOS 8.3 文件名格式的限制,常使用下列缩写:
.tgz 等价于 .tar.gz
.tbz 与 tb2 等价于 .tar.bz2
.taz 等价于 .tar.Z
.tlz 等价于 .tar.lzma
.txz 等价于 .tar.xz
– 摘自维基百科
文件格式:*.tar
for f in *.tar; do tar xvf $f; done
这条命令表示对当前目录下所有以 .tar 结尾的文件进行解压,并保留原始文件名和目录结构。
文件格式:*.tar.gz
for f in *.tar.gz; do tar zxvf $f; done
这条命令表示对当前目录下所有以 .tar.gz 结尾的文件进行解压,并保留原始文件名和目录结构。其中 z 参数表示使用 gzip 工具进行解压。
文件格式:*.tar.bz
for f in *.tar.bz; do tar jxvf $f; done
这条命令表示对当前目录下所有以 .tar.bz 结尾的文件进行解压,并保留原始文件名和目录结构。其中 j 参数表示使用 bzip2 工具进行解压。
rar
文件格式:*.rar
工具:unrar
- 无密码
for f in *.rar; do unrar x $f; done
- 有密码
for f in *.rar; do unrar x -p'密码' $f; done
zip
文件格式:*.zip
工具:unzip
- 无密码
for f in *.zip; do unzip $f; done
- 有密码
for f in *.zip; do unzip -p'密码' $f; done
7z
文件格式:*.7z
工具:p7zip
- 无密码
for f in *.7z; do 7z x $f; done
- 有密码
for f in *.7z; do 7z x -p'密码' $f; done