Поиск по сайту:

Как установить и использовать файловый архиватор 7zip в Ubuntu Linux


На этой странице

  1. Загрузка и установка 7zip
  2. Использование 7zip
  3. Заключение

Если вы являетесь пользователем 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 на 30-50% лучше, чем коэффициент сжатия в формате ZIP», — говорится в официальной документации инструмента. Ниже приведены некоторые другие функции 7zip, указанные на официальном сайте:

  • Для форматов ZIP и GZIP формат 7-Zip обеспечивает коэффициент сжатия на 2–10 % лучше, чем коэффициент сжатия PKZip и WinZip.
  • Надежное шифрование AES-256 в форматах 7z и ZIP.
  • Возможность самораспаковывания для формата 7z
  • Интеграция с оболочкой Windows
  • Мощный файловый менеджер
  • Мощная версия командной строки
  • Плагин для FAR Manager
  • Локализации для 87 языков

Если вам интересно, какие награды получил 7zip, на странице инструментов в Википедии:  В 2007 году SourceForge.net присудил ему награды Выбор сообщества за Технический дизайн и Лучший проект. В 2013 году 7-Zip получил награду Toms Hardware Elite за превосходство в скорости и степени сжатия.

Достаточно причин, чтобы научиться им пользоваться, не так ли? Но доступно ли это в Linux? Ну да - есть порт версии для командной строки на Linux/Unix, и он получил название p7zip.

В этой статье мы обсудим, как установить и использовать p7zip в Linux. Обратите внимание, что все инструкции и команды, упомянутые в этом руководстве, были протестированы на Ubuntu 18.04 LTS.

Скачивание и установка 7zip

Вы можете легко загрузить и установить инструмент p7zip в Ubuntu, используя следующие команды:

sudo apt-get install p7zip-full p7zip-rar

Использование 7zip

Пакет p7zip устанавливает утилиту командной строки с именем 7z. Ниже приведен его синтаксис:

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

Если это кажется немного сложным, не волнуйтесь, потому что хорошо объясните использование 7zs маленькими шагами.

Для начала давайте разберемся, как мы можем создать архив .7z с помощью этой команды. Для этого предположим, что есть каталог с именем files, который содержит четыре файла:

Теперь задача состоит в том, чтобы упаковать все эти 4 файла в файл .7z, скажем, files.7z. Для этого войдите в каталог files в командной строке и выполните следующую команду:

$ 7z a files.7z *

На следующем снимке экрана показана команда в действии:

После успешного выполнения приведенной выше команды в вашем текущем рабочем каталоге будет создан файл с именем files.7z.

Теперь предположим, что вы случайно/преднамеренно удалили четыре файла из каталога files:

И хотите получить их, извлекая архивный файл .7z, который мы только что создали. Это можно сделать с помощью параметра командной строки e следующим образом:

7z e files.7z

Это были основы архивирования и извлечения с помощью инструмента 7z. Теперь предположим, что требуется создать файл .zip. Это легко сделать с помощью следующей команды:

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

Например:

Инструмент 7zip также позволяет легко обновлять файл архива после его создания. Например, предположим, что вы создали архив, а затем поняли, что в него нужно добавить что-то еще, тогда вместо того, чтобы удалять старый архив и создавать новый, вы можете просто обновить его новыми материалами, которые хотите добавить.

Например, предположим, что каталог files теперь содержит всего 5 текстовых файлов, и я хочу также добавить file5 в архив files.7z. Затем я могу сделать это, используя параметр u в команде 7z. Вот команда в действии:

Один из способов убедиться, что обновленный архив теперь содержит в общей сложности пять файлов, — вручную проверить обновленный архив, дважды щелкнув его. Но если вы хотите сделать это через командную строку, вы можете использовать параметр l, предоставляемый командой 7z.

Итак, как вы можете видеть на снимке экрана выше, команда 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, попробуйте.