如何在Ubuntu Linux上安装和使用7zip文件存档

如果您是Microsoft Windows用户,并且您的工作涉及通过网络发送/接收大型文件,则有可能您至少听说过(如果不使用)7zip工具。 对于那些不了解的人来说,7zip是一个获奖的开源文件归档器,声称拥有“高压缩率”。

除了7z,该工具还支持其他几种格式。 例如,您可以使用它来打包和提取以下类型的文件:7z,XZ,BZIP2,GZIP,TAR,ZIP和WIM。 然而,事实并非如此,因为7zip工具也可用于解包其他几种文件类型,包括AR,ARJ,CAB,CHM,CPIO,CramFS,DMG,EXT,FAT,GPT,HFS,IHEX,ISO,LZH, LZMA,MBR,MSI,NSIS,NTFS,QCOW2,RAR,RPM,SquashFS,UDF,UEFI,VDI,VHD,VMDK,WIM,XAR和Z。

该工具的官方文档说:“新的7z格式的压缩比率比ZIP格式的比例高30-50%。 以下是官方网站列出的7zip其他功能:

  • 对于ZIP和GZIP格式, 7-Zip提供的压缩比率比PKZip和WinZip提供的比率高出2-10%
  • 强大的AES-256加密7z和ZIP格式
  • 7z格式的自解压能力
  • 与Windows Shell集成
  • 强大的文件管理器
  • 强大的命令行版本
  • FAR管理器插件
  • 本地化87种语言

如果您想知道哪些奖项获得了7zip的奖项,请从该工具的维基百科页面获取2007年,SourceForge.net授予社区“技术设计”和“最佳项目”奖项。 2013年,由于速度和压缩率的优势,7-Zip获得了Tom's Hardware Elite的奖项。

足够的理由学习如何使用它,对吧? 但是,它在Linux上可用吗? 嗯,是的 - 有一个Linux / Unix的命令行版本的端口,它被称为p7zip

在本文中,我们将讨论如何在Linux中安装和使用p7zip。 请注意,本教程中提到的所有说明和命令已在Ubuntu 16.04 LTS上进行了测试。

下载并安装7zip

您可以使用以下命令轻松地在Ubuntu中下载并安装p7zip工具:

sudo apt-get install p7zip-full
sudo apt-get install p7zip-rar

7zip用法

p7zip包安装名为7z的命令行实用程序。 以下是其语法:

7z [adeltux] [-] [SWITCH] <ARCHIVE_NAME> <ARGUMENTS>...

如果看起来有点复杂,别担心,因为我们会在宝贝步骤中解释7z的用法。

首先,让我们了解如何使用此命令创建一个.7z归档。 为此,假设有一个名为files的目录包含四个文件:

现在,任务是将所有这4个文件打包在一个.7z文件中,例如files.7z 。 所以要做到这一点,在命令行中输入files目录,然后执行以下命令:

$ 7z a files.7z *

以下屏幕截图显示了正在执行的命令:

上述命令运行成功后,将在当前工作目录中创建一个名为files.7z的文件。

现在,假设你不小心/故意删除文件目录中存在的四个文件:

并希望通过提取我们刚刚创建的.7z归档文件来检索它们。 这可以使用'e'命令行选项以下列方式完成:

7z e files.7z

这是使用7z工具归档和提取的基础。 现在假设,要求是创建一个.zip文件。 这可以使用以下命令轻松完成:

7z a [zipfile-name] [files-to-be-zipped]

例如:

7zip工具还允许您在创建后轻松更新存档文件。 例如,假设您已经创建了一个存档,然后意识到需要添加更多的存档,而不是删除旧存档并创建一个新的存档,您可以使用要添加的新内容来更新它。

例如,假设文件目录现在包含总共5个文本文件,并且我想将file5添加到files.7z存档。 然后我可以使用7z命令中的'u'选项。 这是命令行动:

确认现在更新的归档文件总共包含五个文件的一种方式是通过双击来手动检查更新的归档文件。 但是,如果要通过命令行执行此操作,则可以使用7z命令提供的'l'选项。

因此,您可以在上面的屏幕截图中看到,7z命令确认files.7z存档已使用新的文本文件进行更新。

继续,如果您想从7z创建的存档中删除某些内容,您也可以这样做。 在这种情况下,要使用的命令行选项为'd'。 但是,该命令的总体语法保持不变。

7z d [archive-name] [file-to-be-deleted]

请记住,您必须为上述命令添加“-r”开关,以防有问题的文件位于已归档的子目录中,尽管由于某些原因,官方的7z文档不鼓励用户使用这个开关(我测试了几次,它对我来说适用于预期)。

以下是7z实用程序的创建者想要记住的一些重要信息:

DO NOT USE the 7-zip format for backup purpose on Linux/Unix because :
- 7-zip does not store the owner/group of the file.

On Linux/Unix, in order to backup directories you must use tar :
- to backup a directory  : tar cf -  directory  |  7za  a  -si  directory.tar.7z
- to restore your backup : 7za x -so directory.tar.7z | tar xf -

If  you  want  to send files and directories (not the owner of file) to others Unix/MacOS/Windows users, you can use the 7-zip format.
example : 7za a directory.7z  directory

Do not use "-r" because this flag does not do what you think.

Do not use directory/* because of ".*" files (example  :  "directory/*" does not match "directory/.profile")

有关7z的更多信息,请访问命令的手册页

结论

正如您在本教程中所观察到的,7zip是一个非常有效的归档工具。 它在Linux上的化身 - p7zip - 不仅易于安装,而且易于使用。 许多文档以工具官方网站上的 手册页常见问题解答和支持页面的形式提供,以及其Sourceforge列表的信息 。 如果您对7zip印象深刻,请尝试一下。

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏