摘要:
Linux系统的一些解压缩技巧。
7z/zip格式
安装
安装p7zip
debian可以直接安装,其他系统可以使用相应命令。sudo apt-get install p7zip-full
保留完整目录结构解压7z/zip文件7z x name.7z
解压带密码7z/zip文件7z x -p"passwordGo" name.7z
支持utf-8
编码的中文密码,而在Windows平台压缩包其中文密码一般是gbk
编码。
解压gbk
编码密码的7z/zip文件
现有密码为中文密码
的压缩包name.7z
。
直接执行7z x -p"" name.7z
报密码错,因为shell输入的中文密码
是utf-8
编码。
需要有一个编码转换的过程,可以执行命令行:7z x -p"$(echo -n 中文密码|iconv -f utf-8 -t gbk)" name.7z
shell会首先执行$()
中的命令,不换行打印中文密码中文密码
,再将uft-8
编码的密码转换成gbk
编码。最后执行解压缩命令,即可成功解压。
解压密码带有特殊字符的7z/zip文件
现有密码为letsgo!-pipixia#hahaha%wow$thatwasepic!
的压缩包。
直接执行7z x -p'letsgo!-pipixia#hahaha%wow$thatwasepic!' name.7z
注意到-p
后密码引号为''
。
解压分卷7z/zip文件
split files:
- name.7z.001
- name.7z.002
- name.7z.003
不用合并后再解压缩,任选一个解压即可。7z x name.7z.001
解压带密码分卷7z/zip文件7z x -p"passwordGo!" name.7z.001
批量解压各自独立的7z/zip文件for i in *.7z; do 7z x -p"passwordGo" $i; done
解压目录下所有7z/zip文件
先使用find
找出压缩文件,再执行解压。find /home/AriaGo *.7z -exec 7z x -p'passwordGo' {} \;
加密压缩7z a dstname.7z * -p'password'
*
是目录或文件,如./image/homeland
,./image/homeland/skyline.jpg
更多详情,请参考:
https://www.cnblogs.com/itech/archive/2009/08/31/1555835.html
https://blog.csdn.net/qq_28050861/article/details/103255120
rar格式
安装
安装unrar
debian可以直接安装,其他系统可以使用相应命令。sudo apt-get install unrar
按源目录结构解压
保留源目录结构解压到工作目录。unrar x name.rar
不保留目录结构解压
不保留源目录结构解压到工作目录。unrar e name.rar
不保留目录结构解压到指定目录unrar e name.rar /home/level1/level2
解压带密码rar文件unrar e -p"passwordGo" name.rar
列出文件列表unrar l name.rar
更多详情,请参考:
https://www.tecmint.com/how-to-open-extract-and-create-rar-files-in-linux/
tar.gz格式
压缩tar -czvf ./dstfilename.tar.gz ./srcfilname.format
未完待续