Centos7中使用7zip压缩工具

简介:

7-Zip是一个支持7z(它实现了LZMA压缩算法,具有非常高的压缩比)、LZMA2、XZ、ZIP、Zip64、CAB、ARJ、GZIP、BZIP2、TAR、CPIO、RPM、ISO、大多数文件系统映像和DEB格式的文件归档器。RAR格式由于不是免费许可,已经被删除了。
环境
Centos7.7 Minimal
p7zip-16.02
安装
默认Centos7没有安装p7zip安装包,默认源里面也没有这个安装包,需要安装epel源才能安装p7zip安装包。

[root@localhost ~]# yum -y install epel-release
[root@localhost ~]# yum -y install p7zip p7zip-plugins
使用方法
7z命令提供的函数字母与命令行选项类似,但使用时不使用-。这些参数字母告诉命令它需要执行的函数。

压缩文件
创建一个压缩包使用a参数

创建一个7z格式的压缩包:

[root@localhost ~]# 7z a files.7z file1.txt file2.txt file3.txt file4.txt

7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,1 CPU Intel(R) Core(TM) i5-8400 CPU @ 2.80GHz (906EA),ASM,AES-NI)

Scanning the drive:
4 files, 0 bytes

Creating archive: files.7z

Items to compress: 4

Files read from disk: 0
Archive size: 143 bytes (1 KiB)
Everything is Ok
执行完命令,查看一下是否已经创建7z格式的压缩包
Centos7中使用7zip压缩工具Centos7中使用7zip压缩工具
创建一个包含目录的压缩包:

[root@localhost ~]# 7z a gpg.7z .gnupg/

7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,1 CPU Intel(R) Core(TM) i5-8400 CPU @ 2.80GHz (906EA),ASM,AES-NI)

Scanning the drive:
2 folders, 5 files, 8280 bytes (9 KiB)

Creating archive: gpg.7z

Items to compress: 7

Files read from disk: 2
Archive size: 4157 bytes (5 KiB)
Everything is Ok
[root@localhost ~]#
Centos7中使用7zip压缩工具Centos7中使用7zip压缩工具
7zip还可以压缩、解压缩其他格式的压缩包。比如:创建一个.zip格式的压缩包。

[root@localhost ~]# 7z a files.zip file{1..4}.txt

7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,1 CPU Intel(R) Core(TM) i5-8400 CPU @ 2.80GHz (906EA),ASM,AES-NI)

Scanning the drive:
4 files, 0 bytes

Creating archive: files.zip

Items to compress: 4

Files read from disk: 4
Archive size: 542 bytes (1 KiB)
Everything is Ok
Centos7中使用7zip压缩工具Centos7中使用7zip压缩工具

列出压缩包里面的内容
列出压缩包的内容使用l参数:

[root@localhost ~]# 7z l gpg.7z

7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,1 CPU Intel(R) Core(TM) i5-8400 CPU @ 2.80GHz (906EA),ASM,AES-NI)

Scanning the drive for archives:
1 file, 4157 bytes (5 KiB)

Listing archive: gpg.7z

--
Path = gpg.7z
Type = 7z
Physical Size = 4157
Headers Size = 278
Method = LZMA2:12k
Solid = +
Blocks = 1

Date Time Attr Size Compressed Name
------------------- ----- ------------ ------------ ------------------------
2020-01-04 18:24:05 D.... 0 0 .gnupg
2020-01-04 18:22:36 D.... 0 0 .gnupg/private-keys-v1.d
2020-01-04 18:24:48 ....A 0 0 .gnupg/S.gpg-agent
2020-01-04 18:22:36 ....A 0 0 .gnupg/pubring.gpg
2020-01-04 18:24:05 ....A 0 0 .gnupg/secring.gpg
2020-01-04 18:22:36 ....A 7680 3879 .gnupg/gpg.conf
2020-01-04 18:24:52 ....A 600 .gnupg/random_seed
------------------- ----- ------------ ------------ ------------------------
2020-01-04 18:24:52 8280 3879 5 files, 2 folders
Centos7中使用7zip压缩工具Centos7中使用7zip压缩工具

解压文件
使用e来解压文件,解压所有文件到当前目录。(不推荐使用)

[root@localhost test]# 7z e gpg.7z

7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,1 CPU Intel(R) Core(TM) i5-8400 CPU @ 2.80GHz (906EA),ASM,AES-NI)

Scanning the drive for archives:
1 file, 4157 bytes (5 KiB)

Extracting archive: gpg.7z

Path = gpg.7z
Type = 7z
Physical Size = 4157
Headers Size = 278
Method = LZMA2:12k
Solid = +
Blocks = 1

Everything is Ok

Folders: 2
Files: 5
Size: 8280
Compressed: 4157
可以看到所有文件都解压到当前目录了。
Centos7中使用7zip压缩工具Centos7中使用7zip压缩工具
现在使用x参数解压文件看一下。

[root@localhost test]# 7z x gpg.7z

7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,1 CPU Intel(R) Core(TM) i5-8400 CPU @ 2.80GHz (906EA),ASM,AES-NI)

Scanning the drive for archives:
1 file, 4157 bytes (5 KiB)

Extracting archive: gpg.7z

Path = gpg.7z
Type = 7z
Physical Size = 4157
Headers Size = 278
Method = LZMA2:12k
Solid = +
Blocks = 1

Everything is Ok

Folders: 2
Files: 5
Size: 8280
Compressed: 4157
可以看到解压出来的文件,按照原来文件的目录形式解压出来的。
Centos7中使用7zip压缩工具Centos7中使用7zip压缩工具

更新压缩包
一段时间之后,需要将一些新文件添加到文件夹中,并且希望将他们添加到压缩包里面,可以不用创建一个新的压缩包,只需要更新现有的压缩包就可以。

首先将test目录压缩

[root@localhost test]# 7z a files.7z test/

7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,1 CPU Intel(R) Core(TM) i5-8400 CPU @ 2.80GHz (906EA),ASM,AES-NI)

Scanning the drive:
1 folder, 4 files, 0 bytes

Creating archive: files.7z

Items to compress: 5

Files read from disk: 0
Archive size: 158 bytes (1 KiB)
Everything is Ok
Centos7中使用7zip压缩工具Centos7中使用7zip压缩工具
在test文件夹中创建几个文件,然后再更新压缩包:

[root@localhost test]# touch test/file{5..10}.txt
[root@localhost test]# 7z u files.7z test/

7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,1 CPU Intel(R) Core(TM) i5-8400 CPU @ 2.80GHz (906EA),ASM,AES-NI)

Open archive: files.7z

Path = files.7z
Type = 7z
Physical Size = 158
Headers Size = 158
Solid = -
Blocks = 0

Scanning the drive:
1 folder, 10 files, 0 bytes

Updating archive: files.7z

Items to compress: 7

Files read from disk: 0
Archive size: 186 bytes (1 KiB)
Everything is Ok
Centos7中使用7zip压缩工具Centos7中使用7zip压缩工具
查看一下是否已经添加文件。

[root@localhost test]# 7z l files.7z

7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,1 CPU Intel(R) Core(TM) i5-8400 CPU @ 2.80GHz (906EA),ASM,AES-NI)

Scanning the drive for archives:
1 file, 186 bytes (1 KiB)

Listing archive: files.7z

--
Path = files.7z
Type = 7z
Physical Size = 186
Headers Size = 186
Solid = -
Blocks = 0

Date Time Attr Size Compressed Name
------------------- ----- ------------ ------------ ------------------------
2020-03-11 14:24:54 D.... 0 0 test
2020-03-11 14:18:22 ....A 0 0 test/file1.txt
2020-03-11 14:24:54 ....A 0 0 test/file10.txt
2020-03-11 14:18:22 ....A 0 0 test/file2.txt
2020-03-11 14:18:22 ....A 0 0 test/file3.txt
2020-03-11 14:18:22 ....A 0 0 test/file4.txt
2020-03-11 14:24:54 ....A 0 0 test/file5.txt
2020-03-11 14:24:54 ....A 0 0 test/file6.txt
2020-03-11 14:24:54 ....A 0 0 test/file7.txt
2020-03-11 14:24:54 ....A 0 0 test/file8.txt
2020-03-11 14:24:54 ....A 0 0 test/file9.txt
------------------- ----- ------------ ------------ ------------------------
2020-03-11 14:24:54 0 0 10 files, 1 folders
Centos7中使用7zip压缩工具Centos7中使用7zip压缩工具

总结
7z格式的压缩比例比ZIP格式的压缩比例高30%-50%。

相关文章
|
1月前
|
Linux 网络安全 数据安全/隐私保护
如何在 VM 虚拟机中安装 CentOS Linux 9 操作系统保姆级教程(附链接)
如何在 VM 虚拟机中安装 CentOS Linux 9 操作系统保姆级教程(附链接)
160 0
|
2月前
|
关系型数据库 MySQL Linux
centos7.0环境下安装MySql_8.0.12
centos7.0环境下安装MySql_8.0.12
|
1月前
|
存储 JavaScript Linux
Linux环境下安装nmp(Centos环境)保姆级教学 一步到位
Linux环境下安装nmp(Centos环境)保姆级教学 一步到位
|
18小时前
|
Linux
centos 6.5安装yum
centos 6.5安装yum
5 0
|
2天前
|
存储 Linux 网络安全
centos7使用yum网络安装
这些是使用Yum进行网络安装的基本步骤。根据你的需求,你可以重复步骤3和4来安装其他软件包。请注意,执行Yum操作需要root或具有sudo权限的用户。
12 1
|
8天前
|
关系型数据库 MySQL Linux
centos7安装mysql-带网盘安装包
centos7安装mysql-带网盘安装包
45 2
|
14天前
|
存储 Linux Shell
centos 部署docker容器 安装 、基本使用方法(一)
centos 部署docker容器 安装 、基本使用方法(一)
26 0
|
14天前
|
分布式计算 Hadoop Java
centos 部署Hadoop-3.0-高性能集群(一)安装
centos 部署Hadoop-3.0-高性能集群(一)安装
15 0
|
14天前
|
关系型数据库 MySQL Linux
CentOS 7 下使用yum安装MySQL5.7.20 最简单 图文详解
CentOS 7 下使用yum安装MySQL5.7.20 最简单 图文详解
68 0
|
21天前
|
IDE Linux 开发工具
CentOS7.4+REDHAWK2.3.1安装教程——折腾篇
CentOS7.4+REDHAWK2.3.1安装教程——折腾篇
19 0