7z 的一些linux命令行操作

7z是一种解压缩软件,因为大多数的linux系统都自带7z或者我们可以sudo 命令快速的安装,因此我们常用7z对linux系统中的文件进行解压缩

Linux安装7z的命令:  sudo apt install p7zip-full

注:
p7zip、p7zip-full和p7zip-rar三个版本的区别:
p7zip和p7zip-full之间的区别在于p7zip是较轻的版本,仅支持.7z,而完整版本支持更多7z压缩算法(用于音频文件等)。
p7zip-rar软件包提供对7z的RAR文件的支持,在大多数情况下,安装p7zip-full应该足够了。

 

command(命令)

command即第一个参数:

command说明
a 添加文件的压缩包,或者创建新的压缩包。
d 从压缩包中删除文件。
e 从压缩包中提取。
t 测试压缩包的是否出错。
u 更新压缩包中的文件。
 

switch(命令对应的参数)

由于command很多,而其对应的switch也不尽相同。

常用的switch

名称说明简单例子(只展示参数部分)
-m 压缩方法,有:Zip、GZip、BZip2、7z、XZ..很多 -mx5 见补充
-t 压缩包格式,压缩时可以指定分卷压缩, 有*, #(单独打开一个分卷), 7z, xz, split, zip, gzip, bzip2, tar, .... -t7z
-p 设置密码 -p123456
-r 递归子目录,有-r、-r-、-r0 -r src*.cpp src*.h只压缩cpp和h格式的文件
 

实例

1 压缩

测试文件夹的tree:

 

 

 一、压缩命令:

普通压缩    
7z a archive1.
zip subdir //把subdir文件夹或者是文件进行压缩,生成文件archive1.zip 同时压缩多个目录 7z a archive.zip subdirav subdirab //同时subdirav、subdirab两个文件夹或是文件压缩到archive.zip下 筛选压缩 7z a file.7z subdir*.py //使用的是简单的*作为通配符。此时file.7z里只有subdir和subdir内的test.py 指定密码压缩 7z a file.7z subdir* -p123456 //压缩subdir内的所有文件,并指定密码为123456.但是没有隐藏内部的文件名(7z是可以隐藏压缩文件内部的文件名的) 指定密码压缩--隐藏文件名版 7z a file.7z subdir* -p123456 -mhe //和上一个版本的唯一区别是隐藏了压缩文件内部的文件名。 分卷压缩 7z a file.7z subdir* -v1K //指定分卷大小为1K,还可以指定其他单位(M、G...)。大小写不敏感。 其他 如分卷压缩+指定密码等组合性的指令不做演示。可以根据参数的使用方法自由组合

 

 

二、解压命令:

普通解压
7z x file.7z                          //解压到当前目录

带路径的解压缩命令(最常用)
7z x asdf.7z                          //x的意思是执行带绝对路径解压动作,这会在当前文件夹下创建一个文件夹asdf,把压缩包里的文件、文件夹不改动结构释放到文件asdf里面,就像我们在
                                      // 图形界面下看到的常经典解压操作一样
解压到指定目录
7z x file.7z -ofile/                  //将file.7z解压到当前目录的file文件夹下(不存在是会自动创建)使用-o解压到指定目录

解压特定文件
7z x file.7z -ofile/ *.py -r         //解压以.py结尾的文件到file文件夹下,注意加上-r。

解压分卷
前提:分卷是完整的
7z x file.7z.001
注意:
分卷在同一目录下(使用这个命令是这样的,其他的不知道)
解压的是第一个分卷即xxx.001

解压带密码的压缩包
7z x file.7z -p123456                //解压file.7z,密码为123456

跳过确认输入的参数
-y:所有确认选项都默认为是(即不出现确认提示),重复文件时会覆盖
-aos:跳过已存在的文件

 

 

三、删除

7z d file.7z *.py -r                //删除file.7z内以.py结尾的文件,注意不要忘了 -r

7z d file.7z *.py -r -p123456       //带密码版

 

 

四、更新

7z u file.7z *.py                  //添加.py结尾的文件到file.7z内

7z u file.7z *.py -p123456 //带密码版

 

 

参考文章: 7z命令行简单使用 - 走看看 (zoukankan.com)




posted on 2022-07-17 21:55  沈香茶  阅读(11175)  评论(0)    收藏  举报