Linux консоль распаковать zip

Способы распаковки архивов формата ZIP в Linux

Как распаковать ZIP в Linux

Хранить программы, директории и файлы иногда проще в виде архива, поскольку так они занимают меньше места на компьютере, а также могут свободно перемещаться через съемные носители на разные компьютеры. Одним из самых популярных форматов архивов считается ZIP. Сегодня мы бы хотели рассказать о том, как работать с таким типом данных в операционных системах на базе ядра Линукс, поскольку для той же распаковки или просмотра содержимого придется применять дополнительные утилиты.

Распаковываем архивы формата ZIP в Linux

Далее мы затронем две свободных популярных утилиты, управление которыми осуществляется через консоль, то есть пользователю придется вводить встроенные и дополнительные команды для управления всеми файлами и инструментами. Примером сегодня выступит дистрибутив Ubuntu, а для обладателей других сборок мы сделаем акценты на каких-либо несовпадениях.

Отдельно хочется отметить, если вы заинтересованы в дальнейшей установке программы из архива, сначала проверьте, нет ли ее в официальных хранилищах или отдельных пакетах под ваш дистрибутив, ведь осуществить такую инсталляцию гораздо проще.

Читайте также: Установка RPM-пакетов / DEB-пакетов в Ubuntu

Способ 1: Unzip

Хоть в Ubuntu Unzip и является встроенной утилитой, позволяющей управлять архивами необходимого нам типа, однако в других сборках Линукс этот полезный инструмент может отсутствовать, поэтому давайте начнем с его установки, а потом уже разберемся с взаимодействием.

Запуск классической консоли в Linux

    Для начала запустите «Терминал» любым удобным методом, например, через меню.

  • Здесь пропишите команду sudo apt install unzip для дистрибутивов на Ubuntu или Debian, либо sudo yum install unzip zip для версий, использующих пакеты форматов Red Hat. После введения нажмите на Enter. Установка программы Unzip через консоль в Linux
  • Укажите пароль для активации рут-доступа, поскольку мы используем команду sudo, выполняя все шаги от имени суперпользователя. Ввод пароля для установки Unzip в Linux
  • Теперь остается ждать, пока все файлы будут добавлены в операционную систему. В случае наличия Unzip на компьютере вы получите соответствующее уведомление. Завершение установки Unzip в Linux
  • Далее потребуется узнать расположение нужного архива, если вы этого еще не сделали заранее. Для этого откройте папку хранения объекта, нажмите на нем ПКМ и выберите пункт «Свойства». Переход к свойствам архива в Linux
  • Запомните путь родительской папки, он пригодится во время распаковки. Определение родительской папки архива в Linux
  • Вернитесь в «Терминал» и перейдите в родительскую папку с помощью cd /home/user/folder , где user — имя пользователя, а folder — название папки, где хранится архив. Переход к необходимой папке в консоли Linux
  • Чтобы запустить процесс распаковки, достаточно написать unzip folder , где folder — название архива, .zip при этом дописывать необязательно, утилита сама определит формат. Распаковать архив через Unzip в Linux
  • Дождитесь появления новой строки для ввода. Если не вылезло никаких ошибок, значит все прошло успешно и можно переходить в родительскую папку архива, чтобы найти там уже распакованный вариант. Завершение распаковки архива через Unzip в Linux
  • Если же вы хотите поместить распакованные файлы в другую папку, придется применить дополнительный аргумент. Теперь вам требуется прописать unzip folder.zip -d /way , где /way — название папки, куда следует сохранить файлы. Выбрать место для распаковки архива через Unzip в Linux
  • Дождитесь завершения обработки всех объектов. Распаковка архива через Unzip в заданное место Linux
  • Просмотреть содержимое архива можно командой unzip -l folder.zip , находясь в родительской папке. Перед вами сразу отобразятся все найденные файлы. Просмотреть содержимое архива через Unzip в Linux
  • Читайте также:  Linux python venv deactivate

    Что касается дополнительных аргументов, применяемых в утилите Unzip, то здесь следует отметить несколько самых важных:

    Аргументы Описание
    -u Обновление существующих файлов в директории
    -v Отображение всей доступной информации об объекте
    -P Установка пароля для получения разрешения на распаковку архива (в случае наличия шифрования)
    -n Не перезаписывать уже существующие файлы в месте распаковки
    -j Игнорирование структуры архива

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

    Способ 2: 7z

    Многофункциональная утилита 7z по работе с архивами предназначена не только для взаимодействия с одноименным типом файлов, но и поддерживает другие популярные форматы, в том числе и ZIP. Для операционных систем на Linux тоже есть версия этого инструмента, поэтому предлагаем с ней ознакомиться.

    1. Откройте консоль и загрузите последнюю версию 7z с официального репозитория, введя команду sudo apt install p7zip-full , а обладателям Red Hat и CentOS потребуется указать sudo yum install p7zip . Команда для установки 7z в Linux
    2. Подтвердите добавление новых файлов в систему, выбрав утвердительный вариант. Подтвердить добавление файлов для 7z в Linux
    3. Переместитесь в папку, где хранится архив, как это было показано в предыдущем способе с использованием команды cd . Здесь просмотрите содержимое объекта перед распаковкой, написав в консоли 7z l folder.zip , где folder.zip — название необходимого архива. Просмотр файлов архива через утилиту 7z в Linux
    4. Процесс распаковки в текущую папку осуществляется через 7z x folder.zip . Распаковать содержимое архива через 7z в Linux
    5. Если какие-то файлы с таким же названием там уже присутствуют, их предложат заменить или пропустить. Выбирайте вариант, исходя из собственных предпочтений. Подтвердить замену файлов для 7z в Linux

    Как и в случае с Unzip, в 7z есть ряд своих дополнительных аргументов, советуем тоже ознакомиться с основными из них:

    Аргументы Описание
    e Извлечение файлов с указанием пути (при использовании x путь сохраняется прежний)
    t Проверка архива на целостность
    -p Указание пароля от архива
    -x + перечень файлов Не распаковывать заданные объекты
    -y Положительные ответы на все поставленные вопросы во время распаковки
    Читайте также:  Astra linux rdp xorg

    Вы получили инструкции по использованию двух популярных утилит для распаковки ZIP в Linux. Особое внимание обратите на дополнительные аргументы и не забывайте применять их в случае надобности.

    Источник

    How do I zip/unzip on the unix command line?

    @joachim, you should ask the question in a question and provide an answer in an answer. There’s no problem with answering your own questions but not as part of the question itself, since that breaks down the whole community-votes-on-the-best-answer advantage of SO. In addition, this is probably better suited for superuser since it’s not programming related.

    @rlb.usa: I work in a lot of different places on a lot of different servers. Using SA for a note like this helps other people too, as I see it.

    9 Answers 9

    Typically one uses tar to create an uncompressed archive and either gzip or bzip2 to compress that archive. The corresponding gunzip and bunzip2 commands can be used to uncompress said archive, or you can just use flags on the tar command to perform the uncompression.

    If you are referring specifically to the Zip file format, you can simply use the zip and unzip commands.

    zip squash.zip file1 file2 file3 

    this unzips it in your current working directory.

    Just as a side note: zip can create many different flavors of .ZIP archives, as well as use many different compressors. On the other hand, there are a number of other compression tools named similarly: 7-Zip, gzip, bzip2, rzip, etc. which are not interchangeable.

    I’m confused, I did this and get a long list of inflations and extractions but when I check the directory it is empty, save for the original zip file? Where is it all going?

    For the record, use unzip -d myfolder squash.zip to extract into a separate new directory ( myfolder ) instead of putting all the files directly into the current directory, which can be annoying if the zip file contains many files and directories in its top level. This mimics how most UI unzip tools work.

    There are a truly vast number of different ways to compress and uncompress under UNIX derivatives so I’m going to assume you meant «zip» in the generic sense rather than a specific file format.

    You can zip files up (in compressed format) with the GNU tar program:

    which will do the current directory. Replace . with other file names if you want something else.

    Читайте также:  Linux skill что это

    That’s assuming of course that you have a tar capable of doing the compression as well as combining of files into one.

    If not, you can just use tar cvf followed by gzip (again, if available) for compression and gunzip followed by tar xvf .

    For specific handling of ZIP format files, I would recommend downloading 7zip and using that — it recognises a huge variety of file formats, including the ZIP one.

    Or use tar jcvf file.tar.bz2. to compress in bzip2 format or tar Jcvf file.tar.xz . for xz compression.

    @Starfish, that’s certainly within your rights, thanks for at least explaining why, so many people don’t take the time to do that 🙂 I took «zip» in the more generic sense (compression) rather than a specific format, so I’ll make that more clear.

    Be aware that tar archives may not work correctly when moving between different platforms, mac to linux or vice versa. Zip is much safer, as it works correctly on all systems.

    I suppose technically this is gzip, so that’s fine. I guess. Pretty obviously not what the question asked for though.

    If you don’t have zip and unzip packages installed and you have java, you can use jar to unzip:

    Well, when it comes to distributing files for a variety of operating systems, I’d recommend 7-zip.

    Usually in the package p7zip , you’ll get the 7z and 7za command, with which you can create your own 7z archives.

    7za can also decompress standard (pkzip) zip archives (and create them as well with the -tzip switch).

    7za a archive.7z file1 file2 directory/ 

    It can also create self-extracting archives with the -sfx switch:

    7za a -sfx archive.exe files1 file2 dir 

    I recommend this method in case Windows users can’t open 7z archives (in case you want to advice a tool for that: PeaZip).

    If you want to use the same compression algorithm with your tarballs, use the -J switch with tar :

    tar cJf archive.tar.xz file1 file2 dir 

    xz is a UNIX tool, that uses LZMA2 for compression, but works the way gz , bz2 , etc works. It even works as a filter.

    7z doesn’t create archives with full filesystem information on UNIX, so you’d need to use tar before using 7z (but since 7z stores other information about the tar file, I’d recommend using xz , as it is designed for it):

    tar cf - file1 file2 dir | 7za z -si archive.tar.7z 

    Источник

    Оцените статью
    Adblock
    detector