7zip 是一款開源的歸檔應(yīng)用程序,開始是為 Windows 系統(tǒng)而開發(fā)的。它能對(duì)多種格式的檔案文件進(jìn)行打包或解包處理,除了支持其原生的 7z 格式的文檔外,還支持包括 XZ、GZIP、TAR、ZIP 和 BZIP2 等這些格式。 通常,7zip 也用來解壓 RAR、DEB、RPM 和 ISO 等格式的文件。除了簡(jiǎn)單的歸檔功能,7zip 還具有支持 AES-256 算法加密以及自解壓和建立多卷存檔功能。在支持 POSIX 標(biāo)準(zhǔn)的系統(tǒng)上(Linux、Unix、BSD),原生的 7zip 程序被移植過來并被命名為 p7zip(“POSIX 7zip” 的簡(jiǎn)稱)。
下面介紹如何在 Linux 中安裝 7zip (或 p7zip)。
在 Debian、Ubuntu 或 Linux Mint 系統(tǒng)中安裝 7zip
在基于的 Debian 的發(fā)布系統(tǒng)中存在有三種 7zip 的軟件包。
- p7zip: 包含 7zr(最小的 7zip 歸檔工具),僅僅只能處理原生的 7z 格式。
p7zip-full: 包含 7z ,支持 7z、LZMA2、XZ、ZIP、CAB、GZIP、BZIP2、ARJ、TAR、CPIO、RPM、ISO 和 DEB 格式。
p7zip-rar: 包含一個(gè)能解壓 RAR 文件的插件。
建議安裝 p7zip-full 包(不是 p7zip),因?yàn)檫@是最完全的 7zip 程序包,它支持很多歸檔格式。此外,如果您想處理 RAR 文件話,還需要安裝 p7zip-rar 包,做成一個(gè)獨(dú)立的插件包的原因是因?yàn)?RAR 是一種專有格式。
$ sudo apt-get install p7zip-full p7zip-rar
在 Fedora 或 CentOS/RHEL 系統(tǒng)中安裝 7zip
基于紅帽的發(fā)布系統(tǒng)上提供了兩個(gè) 7zip 的軟件包。
- p7zip: 包含 7za 命令,支持 7z、ZIP、GZIP、CAB、ARJ、BZIP2、TAR、CPIO、RPM 和 DEB 格式。
p7zip-plugins: 包含 7z 命令,額外的插件,它擴(kuò)展了 7za 命令(例如支持 ISO 格式的抽取)。
在 CentOS/RHEL 系統(tǒng)中,在運(yùn)行下面命令前您需要確保 EPEL 資源庫(kù) 可用,但在 Fedora 系統(tǒng)中就不需要額外的資源庫(kù)了。
$ sudo yum install p7zip p7zip-plugins
注意,跟基于 Debian 的發(fā)布系統(tǒng)不同的是,基于紅帽的發(fā)布系統(tǒng)沒有提供 RAR 插件,所以您不能使用 7z 命令來抽取解壓 RAR 文件。
使用 7z 創(chuàng)建或提取歸檔文件
一旦安裝好 7zip 軟件后,就可以使用 7z 命令來打包解包各式各樣的歸檔文件了。7z 命令會(huì)使用不同的插件來輔助處理對(duì)應(yīng)格式的歸檔文件。
![](/d/20211018/ee27917179fee2052dcf3f02751c137a.gif)
使用 “a” 選項(xiàng)就可以創(chuàng)建一個(gè)歸檔文件,它可以創(chuàng)建 7z、XZ、GZIP、TAR、 ZIP 和 BZIP2 這幾種格式的文件。如果指定的歸檔文件已經(jīng)存在的話,它會(huì)把文件“附加”到存在的歸檔中,而不是覆蓋原有歸檔文件。
$ 7z a archive-filename> list-of-files>
使用 “e” 選項(xiàng)可以抽取一個(gè)歸檔文件,抽取出的文件會(huì)放在當(dāng)前目錄。抽取支持的格式比創(chuàng)建時(shí)支持的格式要多的多,包括 7z、XZ、GZIP、TAR、ZIP、BZIP2、LZMA2、CAB、ARJ、CPIO、RPM、ISO 和 DEB 這些格式。
$ 7z e archive-filename>
解包的另外一種方式是使用 “x” 選項(xiàng)。和 “e” 選項(xiàng)不同的是,它使用的是全路徑來抽取歸檔的內(nèi)容。
$ 7z x archive-filename>
要查看歸檔的文件列表,使用 “l” 選項(xiàng)。
$ 7z l archive-filename>
要更新或刪除歸檔文件,分別使用 “u” 和 “d” 選項(xiàng)。
$ 7z u archive-filename> list-of-files-to-update>
$ 7z d archive-filename> list-of-files-to-delete>
要測(cè)試歸檔的完整性,使用:
$ 7z t archive-filename>