当前位置:   article > 正文

7z linux压缩命令行,教你Centos7中使用7zip压缩命令工具

linux 7-zip命令

教你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格式的压缩包

3b5ccc09e664ac98345e736f2813d691.png

创建一个包含目录的压缩包:

[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 ~]#

4bd810cfa88ff0271758ec63829e7ed5.png

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

256163f45dc7e2019e0e8708ccbdc2ec.png

列出压缩包里面的内容

列出压缩包的内容使用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

e75ad637e5bdabd1a0fcbcdcfec097ea.png

解压文件

使用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

可以看到所有文件都解压到当前目录了。

1b33bb272001a76a083cb0bb805e3762.png

现在使用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

可以看到解压出来的文件,按照原来文件的目录形式解压出来的。

0423b92b23c17886ce15236bcc964864.png

更新压缩包

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

首先将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

8776965801a08091f2a7b644bf9caf37.png

在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

0936216cb1ac23ec458e81d5809b0336.png

查看一下是否已经添加文件。

[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

f585c696b65630999a196400b6d8a38b.png

总 结

本文至此结束,7z格式的压缩比例比ZIP格式的压缩比例高30%-50%。

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/472929
推荐阅读
相关标签
  

闽ICP备14008679号