Linux---7z解压/压缩

CHY2403 2024-09-20 11:07:03 阅读 53

7zip是一个免费的开源文件压缩器,类似于Windows上的WinZip或WinRAR。它是由Igor Pavlov开发的,可用于Windows, Linux和macOS。7zip的一个主要优点是能够将文件压缩到很高的程度,这可以节省大量的磁盘空间。它还支持多种文件格式,包括它自己的7z格式,以及ZIP、TAR和其他格式。

安装

基于Debian系的发行版

sudo apt install -y p7zip-full

基于RHEL系的发行版

sudo yum install p7zip p7zip-plugins -y 或

sudo dnf install p7zip p7zip-plugins -y 或

sudo apt install p7zip-rar -y

p7zip-rar 可以处理rar格式

常用选项

<code>a :添加文件到压缩包

d :删除压缩包中指定的文件

e :解压缩,不保留原始目录结构,提取的文件会平铺在同一个目录

x :解压缩,保留原始目录结构

l :列出压缩包内容

t :测试压缩包完整性、是否损坏

u :更新压缩包文件

-o :指定解压缩后的目录

-p :压缩包设置密码

-t[type] :设置压缩包的格式类型,例如:zip、gzip、bzip2、xz,默认是自己的格式7z

-x :压缩排除文件和解压缩提取排除文件

命令示例

创建压缩包

7z a abc.7z file1.txt file2.txt

压缩包解压,不保留原来的目录结构,平铺在同一个目录

7z e abc.7z

压缩包解压,保留原始目录结构

7z x abc.7z

压缩包解压,保留原始目录结构,并指定解压到的目录

7z x abc.7z -o /tmp/abc

指定压缩级别

7z a -m0=lzma2 abc.7z file1.txt file2.txt

7z a -m9=lzma2 abc.7z file1.txt file2.txt

级别从0到9,数字越小,速度越快,压缩率越低,数字越大,两者就调换过来

压缩一个目录为压缩包

7z a abc.7z ~/abc

压缩添加密码并使用算法加密

7z a -p[password] -mhe=on abc.7z file1.txt file2.txt

-p 后面填自定义密码

-mh2=on 表示开启加密

注意:密码一旦忘记,文件就解压不开,不可恢复

分割压缩包

7z a -v1m abc.7z file1.txt file2.txt

-v指定每个压缩包的大小,1m为1兆

压缩后,压缩包如:abc.7z.001,abc.7z.002

后面解压缩的时候,只需要解压abc.7z.001,7z会自动检测其他压缩包部分并解压

添加文件到存在的压缩包

7z u abc.7z file3.txt

创建其他格式的压缩包

7z a -ttar abc.tar.7z file1.txt file2.txt

从压缩包中提取指定的文件

7z x abc.7z file2.txt

压缩包添加密码

7z a -p[password] abc.7z file1.txt file2.txt

列出压缩包内容

7z l abc.7z

输出文件的名称、大小、压缩比率等

解压缩时显示进度条

7z x -bsp1 abc.7z

压缩时排除指定的文件

7z a abc.7z -x!*.log -x!temp/

排除了以log后缀的文件和temp目录

解压缩时排除指定的文件

7z x abc.7z -x!*.log -x!temp/

创建自解压的压缩包

自解压即不需要在目标机器安装7zip,打包后的压缩包内部包含了7zip程序

7z a -sfx abc.exe file1.txt file2.txt

exe后缀也可以解压

解压自解压的压缩包

./abc.exe

直接运行此压缩包即可

测试压缩包的完整性、是否损坏

7z t abc.7z

删除压缩包中的指定的文件

7z d abc.7z file2.txt

如果源文件变更了,想重新压缩的便捷方式

7z u abc.7z

系统会检测文件的变更,然后更新压缩包



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。