压缩解压工具

压缩解压工具

Linux下压缩解压算法与工具比较

方法 Linux自带否 优点 压缩命令 解压命令
zip 所有操作系统都自带,可压缩文件夹 zip -r xxx.zip 一或多个文件会文件夹 unzip xxx.zip -d 解压到的路径 (会自动创建解压到的路径;压缩包内根目录下诸物皆解压到解压到的路径)
7z 压缩解压都最快,可压缩文件夹 7z a xxx.7z 一或多个文件会文件夹 (注意: a前无-) 7z e xxx.7z -o解压到的路径 (注意:x前无-;-o后没空格;会自动创建解压到的路径,压缩包内根目录下诸物皆解压到解压到的路径)

7z

安装

apt-get安装

推荐p7zip-fullp7zip-rar都装

sudo apt-get install p7zip # 包含7zr(最小的7zip归档工具),只支持7z格式。
sudo apt-get install p7zip-full # 包含完整7z,支持7z、LZMA2、XZ、ZIP、CAB、GZIP、BZIP2、ARJ、TAR、CPIO、RPM、ISO和DEB格式,不支持rar
sudo apt-get install p7zip-rar # 只支持RAR格式

conda安装

conda install -c bioconda p7zip # 安装的是p7zip-full,不支持rar

用法

命令

参考

安装了三种二进制文件, /usr/bin/{7z,7za,7zr}

  • 7z : /usr/bin/7z调用插件/usr/lib/p7zip/7z,支持众多格式;因此若只将/usr/bin/7z拷贝到别的电脑,并不能运行7z
  • 7za : 独立程序,不用插件;支持一些格式,比7z
  • 7zr : 独立程序,不用插件;只支持".7z"格式

一般用7z就好,支持格式最多

拷到别的电脑——需把/usr/lib/p7zip//usr/bin/{7z,7za,7zr}拷走

解压

7z x -t<格式> <压缩文件>.<扩展名> -o<解压目录>
  • x: 解压
  • -t<格式>
    • 如 <格式> = “7z”,“zip”,".tar.bz2"等
    • 缺省:<格式>=“7z”
  • <压缩文件>.<扩展名> : 仅一个
  • <扩展名> 不可缺省,7z不会帮你脑补扩展名
  • -o<解压目录>
    • 压缩包内根目录下文件(夹)都解压到<解压目录>
    • 强烈建议写成-o<目录>/<新建文件夹>, 7z会帮你创建<解压目录>/<新建文件夹>。可避免,压缩包内根级目录下多个文件(夹)堆满<目录>
    • 缺省: <格式>=“./”
  • -o, -t 后没有空格

压缩

7z a -t<格式> <压缩文件>.<扩展名> <待压缩文件()>
  • a: 压缩
  • -t<格式>
    • 如 <格式> = “7z”,"zip"等
    • 缺省:<格式>=“7z”
  • <扩展名> 不可缺省,7z不会帮你脑补扩展名
  • <待压缩文件(夹)>: 可多个, 空格分隔