Создание и редактирование Zip-файлов в Linux с помощью терминала

В предыдущей статье мы подробно рассказали, как использовать команду tar для создания архивов. Хотя tar является очень распространенной схемой сжатия для Linux, он не так популярен для пользователей Windows и Mac OS X, которые найдут большинство своих архивов, созданных в формате zip.

В Linux легко использовать Zip (для создания) и Unzip (для расширения) архивов. Фактически, большинство программ управления архивами графического интерфейса пользователя (таких как Ark, File Roller и Xarchiver) будут выступать в качестве интерфейса практически для любой программы архивации командной строки, установленной на вашем компьютере, и Zip не является исключением. Конечно, мы также можем использовать Zip из терминала. Вот как.

Первый шаг, как вы можете догадаться, это открыть терминал.

01Open_Terminal

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

Затем введите «sudo apt-get install zip unzip» (без кавычек), просто чтобы убедиться, что у нас установлены zip и unzip.

02Install_Zip_and_Unzip

Примечание. Если эти две программы уже установлены, вы получите сообщение об этом, как показано выше.

После установки мы можем использовать zip для создания архивов (или модифицировать существующие) и разархивировать, чтобы развернуть их до оригиналов. Ради этой статьи мы создадим новую папку на рабочем столе, которая называется Stuff. В Терминале мы можем сделать это с помощью одной команды — mkdir / home / username / Desktop / Stuff (конечно, вы замените «username» своим собственным именем пользователя, как показано ниже, и если у вас уже есть папка Stuff на рабочем столе вы захотите изменить имя).

03Make_Stuff_Directory

Теперь, когда у нас есть папка Stuff, мы будем использовать команду «cd», чтобы сделать папку Stuff нашим текущим рабочим каталогом.

cd / home / username / рабочий стол / материал

Теперь введите touch doc1.txt doc2.txt doc3.txt && mkdir Files в свой терминал, чтобы создать папку с именем Files, а также три документа — doc1.txt, doc2.txt и doc3.txt — внутри папки Stuff. ,

04Make_Docs

Еще одна команда, чтобы «cd» во вновь созданную папку «Files» (cd Files), потому что нам нужны другие документы внутри нее.

CD-файлы

Наконец, введите touch doc4.txt doc5.txt doc6.txt, чтобы создать три новых документа.

05Make_More_Docs

Теперь введите cd ../ .., чтобы вернуть рабочий стол обратно в рабочий каталог.

06CD_Back_To_Desktop

Нашим последним шагом перед созданием zip-файла является создание пары «лишних» документов на рабочем столе с теми же именами, что и у файлов, которые мы только что создали, поэтому нажмите touch doc2.txt doc3.txt, чтобы создать их.

07Create_Duplicate_Docs

Наконец, откройте каждый из двух «лишних» текстовых файлов и добавьте к ним текст. Это не должно быть чем-то значимым (или длинным), просто чтобы мы могли видеть, что эти документы действительно отличаются от документов, уже созданных в папках Stuff и files.

Как только это будет сделано, мы можем начать создавать наши zip-файлы. Простейший способ использования zip — указать имя zip-архива, который вы хотите создать, а затем явно указать все файлы, которые должны в него помещаться. Итак, предполагая, что нашим рабочим каталогом является рабочий стол, мы должны ввести zip test Stuff / doc1.txt Stuff / doc2.txt Stuff / doc3.txt, чтобы создать архив с именем test.zip (нам не нужно использовать «.zip». Расширение в команде, так как оно будет добавлено автоматически), которое будет содержать doc1.txt, doc2.txt и doc3.txt, найденные в папке Stuff.

08Create_First_Archive

Вы увидите небольшой вывод, который сообщает нам, что три документа (doc1.txt, doc2.txt и doc3.txt) были добавлены в архив.

09First_Archive_Output

Мы можем проверить это, дважды щелкнув по архиву, который должен находиться на нашем рабочем столе. Это должно открыть его в стандартной архивной программе (Ark в KDE, File Roller в GNOME и Xarchiver в Xfce).

10Open_In_Archive_Program

Теперь, что насчет папки Files? Предполагая, что мы хотим, добавив документы внутри него, в наш архив, мы можем использовать ту же команду, что и выше, но добавить Stuff / Files / * в конец команды.

11Add_To_Archive

Звездочка означает включить все в папку. Так что, если бы внутри папки Files была другая папка, она также была бы добавлена. Однако, если в этой папке были элементы внутри нее, они не будут включены. Для этого нам нужно добавить -r (что означает рекурсивный или рекурсивный).

12Add_Recursively

Следует отметить, что две вышеуказанные команды не предназначены для «добавления» файлов в zip-архив; они предназначены для его создания. Однако, поскольку архив уже существует, команда просто добавляет любые новые файлы в существующий архив. Если бы мы хотели создать этот архив сразу (вместо трех шагов, которые мы выполнили для постепенного добавления файлов в него в образовательных целях), мы могли бы просто набрать zip -r test Stuff / * и создать тот же архив.

13Create_Recursively

Из команды и выходных данных вы заметите, что включены три файла в папке Stuff, а также три документа в папке Files, так что все было выполнено с помощью простой и удобной команды.

А как насчет тех двух «дополнительных» документов, которые мы создали на нашем рабочем столе? Итак, zip работает так, что если вы попытаетесь добавить файл в архив, который уже существует в архиве, новые файлы будут перезаписаны старые. Итак, поскольку документы, созданные на нашем рабочем столе (doc2.txt и doc3.txt), содержат контент (мы добавили «hello world!» В doc2.txt и «yay» в doc3.txt), мы должны иметь возможность добавьте эти документы, а затем сможете проверить это. Сначала мы перетащим два «лишних» документа в папку «Материал».

Скорее всего, вас спросят, хотите ли вы, чтобы новые документы перезаписывали существующие (это в папке, запомните, а не в zip-архиве), поэтому позвольте этому произойти.

Теперь, когда это сделано, давайте добавим их в архив, набрав zip test Stuff / doc2.txt Stuff / doc3.txt

14Adding_Files_To_Archive

Вы заметите, что приведенная выше команда теперь показывает, что файлы обновляются, а не добавляются. Если мы сейчас проверим архив, то заметим, что файлы выглядят одинаково, но когда откроются doc2.txt и doc3.txt, вы увидите, что в них теперь есть содержимое, а не пустое, как в наших исходных файлах. мы.

Иногда в Linux вы увидите, что некоторые файлы скрыты, если добавить точку («.») В начале имени файла. Это особенно характерно для файлов конфигурации, которые должны существовать, но часто не видны (что облегчает беспорядок, а также снижает вероятность того, что файл конфигурации будет случайно удален). Мы можем добавить их в zip-файл довольно легко. Во-первых, давайте предположим, что мы хотим создать zip-файл с именем backup из каждого файла в каталоге. Мы можем сделать это, набрав zip backup * в Терминале.

15Add_All_Files

Это добавит все файлы и папки, хотя любые элементы в этой папке не будут включены. Чтобы добавить их, мы добавим -r еще раз, чтобы команда zip -r backup * была командой.

16Add_Files_Recursively

Теперь мы почти у цели. Чтобы рекурсивно добавлять папки, файлы и скрытые файлы, команда на самом деле очень проста: zip -r backup.

17Add_Files_Recursively_And_Hidden

Теперь расстегнуть молнию довольно просто. Однако прежде чем что-то делать, удалите документы на рабочем столе (doc2.txt и doc3.txt), а также в папке Stuff. Когда они исчезнут, напечатайте unzip test.zip, чтобы развернуть содержимое нашего оригинального архива в ваш текущий каталог.

18Unzip_Archive

Примечание. Если бы мы не удалили документы, мы попытались бы разархивировать содержимое нашего zip-файла в существующий файл, поэтому нас спросят, хотим ли мы заменить каждый документ.

И это все! Сжатие и разархивирование — довольно распространенная задача, и, хотя, безусловно, доступны варианты графического интерфейса, с практикой вы обнаружите, что выполнение тех же самых задач из Терминала также не очень сложно.

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *