Заархивировать все файлы папке linux

Содержание
  1. Практические примеры команды zip
  2. Есть много вещей, которые вы можете сделать с помощью команды Linux zip
  3. Как создать архив всех файлов в папке
  4. Как включить скрытые файлы в архив
  5. Как архивировать все файлы и подпапки в Zip-файле
  6. Как добавить новые файлы в существующий архивный архив
  7. Как обновить существующие файлы в заархивированном архиве
  8. Как удалить файлы из архива
  9. Как скопировать файлы из одного Zip-файла в другой
  10. Как использовать Pattern Matching и Piping для создания архива
  11. Как создать сплит архив
  12. Как настроить отчет о ходе процесса архивирования
  13. Как исправить файл Zip
  14. Как зашифровать архив
  15. Как показать, что будет в архиве
  16. Как проверить архив
  17. Как исключить файлы
  18. Как указать уровень сжатия
  19. 🐧 Как заархивировать все файлы в каталоге в системах Linux?
  20. Установка Zip
  21. На Debian/Ubuntu
  22. На REHL/CentOS
  23. Команда Zip
  24. Как заархивировать файлы в Linux
  25. Как сжимать каталоги Zip на Linux
  26. Как заархивировать папку в Linux
  27. Архивирование файлов в Linux
  28. Архивирование в Linux
  29. Сжатие архивов в Linux
  30. Выводы

Практические примеры команды zip

Есть много вещей, которые вы можете сделать с помощью команды Linux zip

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

Сжатые файлы используются, когда вам нужно сэкономить место и копировать большие файлы из одного места в другое.

Если у вас есть 10 файлов размером 100 мегабайт, и вам нужно перенести их на FTP-сайт, передача может занять значительное время в зависимости от скорости вашего процессора. Если вы сжимаете все 10 файлов в один заархивированный архив, и сжатие уменьшает размер файла до 50 МБ на файл, то вам нужно только передать половину данных.

Как создать архив всех файлов в папке

Представьте, что у вас есть папка песен со следующими MP3-файлами:

Шоссе AC/DC в ад

Люблю голодного мужчину.mp3

Прогуляйся по тебе.mp3

Если тебе нужна кровь, ты ее получишь .mp3

Покажите вниз в огне.mp3

Сенсорный слишком много .mp3

Биение вокруг bush.mp3

Girls Got Rhythm.mp3

Эта простая команда Linux, которая иллюстрирует, как создать архив всех файлов в текущей папке с именем ACDC_Highway_to_Hell.zip:

Текст прокручивается вверх по экрану, показывая файлы по мере их добавления.

Как включить скрытые файлы в архив

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

Чтобы сжать все файлы, включая скрытые файлы в папке, выполните следующую команду:

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

Как архивировать все файлы и подпапки в Zip-файле

Чтобы включить все файлы и подпапки в архив, выполните следующую команду:

Как добавить новые файлы в существующий архивный архив

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

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

Для создания оригинального музыкального архива запустите следующий код:

zip -r music/home/yourname/music/

Чтобы добавить новые файлы в архив, снова запустите ту же команду.

Если в zip-файле содержится список файлов, а один из файлов на диске изменился, то исправленный файл обновляется в zip-файле.

Как обновить существующие файлы в заархивированном архиве

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

Например, представьте, что у вас есть заархивированный файл со следующими файлами:

Теперь представьте, что в течение недели вы добавили два новых файла и изменили два файла так, чтобы папка/home/yourname/documents теперь выглядела так:

/home/ваше имя/документы/file4 (обновлено)

/home/ваше имя/документы/file5 (обновлено)

Когда вы выполните следующую команду, zip-файл будет содержать обновленные файлы (file4 и file5), но file7 и file8 не будут добавлены.

zip zipfilename -f -r/home/yourname/documents

Как удалить файлы из архива

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

zip zipfilename -d [имя файла в архиве]

Например, если у вас есть файл в архиве с именем home/documents/test.txt, вы удалите его с помощью этой команды:

zip zipfilename -d home/documents/test.txt

Как скопировать файлы из одного Zip-файла в другой

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

Читайте также:  Как установить отпечаток пальца windows 10

Предположим, у вас есть zip-файл с именем «Variousmusic.zip» с музыкой от разных исполнителей, одним из которых является AC/DC. Вы можете скопировать песни AC/DC из файла Variousmusic.zip в файл ACDC.zip, используя следующую команду:

zip Variousmusic.zip -U —out ACDC.zip «Back_In_Black.mp3»

Приведенная выше команда копирует файл «Back_In_Black.mp3» из различных музыкальных файлов.zip в ACDC.zip. Если zip-файл, в который вы копируете, не существует, он создается.

Как использовать Pattern Matching и Piping для создания архива

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

Чтобы найти файлы с любовью в заголовке, вы можете использовать следующую команду:

find/home/yourname/Music -name * love *

Приведенная выше команда не идеальна на 100 процентов, потому что она также подбирает слова типа «клевер», но вы поняли идею. Чтобы добавить все возвращенные результаты из вышеприведенной команды в zip-файл с именем lovesongs.zip, выполните эту команду:

find/home/yourname/Music -name * love * | zip lovesongs.zip — @

Как создать сплит архив

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

zip mymusic.zip -r/home/myfolder/Music -s 670 м

Как настроить отчет о ходе процесса архивирования

Существуют различные способы настройки вывода, который появляется во время выполнения архивирования.

Доступны следующие переключатели:

  • -db = показывает, сколько байтов было заархивировано и сколько осталось
  • -dc = отображает количество заархивированных файлов и сколько их осталось
  • -dd = отображает точки для каждых 10 МБ файла, который был заархивирован
  • -ds = устанавливает частоту появления точек
  • -du = отображает несжатый размер каждого файла

zip myzipfilename.zip -dc -r/home/music

Как исправить файл Zip

Если у вас поврежден zip-архив, вы можете попытаться исправить его с помощью команды -F , а в случае неудачи – команды FF .

Это полезно, если вы создали разделенный архив с помощью переключателя -s и потеряли один из файлов архива.

Например, попробуйте сначала это:

zip -F myfilename.zip —out myfixedfilename.zip

zip -FF myfilename.zip —out myfixedfilename.zip

Как зашифровать архив

Если у вас есть конфиденциальная информация, которую вы хотите сохранить в zip-файле, используйте команду -e для ее шифрования. Вас попросят ввести пароль и повторить пароль.

zip myfilename.zip -r/home/wikileaks -e

Как показать, что будет в архиве

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

zip myfilename.zip -r/home/music/-sf

Как проверить архив

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

Вы можете использовать переключатель -T для проверки правильности zip-файла.

zip myfilename.почтовый индекс -T

Вывод этой команды, когда архив недействителен, может выглядеть примерно так:

  • предупреждение zip: отсутствует подпись конца – вероятно, не zip-файл

Помните, что вы можете попробовать команду -F, чтобы исправить поврежденные zip-файлы.

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

Как исключить файлы

Иногда вы хотите исключить определенные файлы из zip-файла. Например, если вы копируете файлы со своего телефона или цифровой камеры, у вас есть смесь видео и изображений. Возможно, вы захотите сжать фотографии в photos.zip и видео в videos.zip.

Вот один из способов исключить видео при создании photos.zip

zip photos.zip -r/home/photos/-x * .mp4

Как указать уровень сжатия

Когда вы сжимаете файлы в zip-файл, система решает, следует ли сжимать файл или просто сохранить его. Например, файлы MP3 уже сжаты, поэтому нет смысла их дополнительно сжимать; они обычно хранятся как внутри zip-файла.

Однако вы можете указать уровень сжатия от 0 до 9 для дальнейшего сжатия файла. Это занимает больше времени, но может значительно сэкономить место.

Источник

🐧 Как заархивировать все файлы в каталоге в системах Linux?

Zip – это утилита сжатия данных, поддерживаемая всеми дистрибутивами Linux.

Zip-архивы относятся к контейнерным архивам, содержащим один или несколько сжатых файлов и каталогов.

Файлы Zip являются кроссплатформенными, что позволяет создавать zip-архивы в Windows, Linux и macOS с помощью различных утилит.

Кроме того, файлы zip-архивов занимают меньше места, что облегчает их перенос и хранение.

В Linux для создания zip-архивов мы используем утилиту zip archive. В этом руководстве мы рассмотрим, как создавать zip-архивы в Linux с помощью утилиты zip.

Установка Zip

В зависимости от дистрибутива Linux, вам нужно будет установить утилиту zip. Поскольку все дистрибутивы Linux поддерживают её, вы можете использовать менеджер пакетов для её установки.

На Debian/Ubuntu

В Debian используйте команду:

На REHL/CentOS

Для CentOS и семейства REHL используйте команду:

Команда Zip

Команда zip проста в использовании.

Общий синтаксис команды следующий:

Чтобы создать zip-архив из нескольких файлов, передайте их в списке (разделенных пробелом) после имени zip-файла.

Читайте также:  System windows form button

Также полезно убедиться, что у вас есть права на запись в директории, в которой вы создаете zip-файл.

Как заархивировать файлы в Linux

Мы можем заархивировать файлы в каталоге таким образом:

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

Утилита Zip автоматически добавляет расширение .zip к имени файла архива, если оно не указано явно.

Как сжимать каталоги Zip на Linux

Вы можете сжать каталоги и соответствующие подкаталоги с помощью флага -r.

Флаг -r указывает zip на рекурсивный обход всего каталога.

Например, рассмотрим каталог /var/log.

Чтобы создать архив всех файлов и каталогов, мы используем команду:

Источник

Как заархивировать папку в Linux

wikiHow работает по принципу вики, а это значит, что многие наши статьи написаны несколькими авторами. При создании этой статьи над ее редактированием и улучшением работали, в том числе анонимно, 9 человек(а).

Количество просмотров этой статьи: 43 515.

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

  • tar — команда, которая запускает архиватор Tar.
  • c — опция, которая отвечает за создание файла с расширением .tar. Эта опция всегда идет первой.
  • v — опция, которая отвечает за вывод на экран подробной информации. То есть в процессе архивирования на экране будут отображаться файлы, которые отправляются в файл с расширением .tar. Вводите эту опцию по желанию.
  • f — опция, которая отвечает за присвоение имени файлу с расширением .tar. Эта опция всегда идет последней.
  • Имя.tar — это имя архива. Введите любое имя по своему желанию, но в конце имени не забудьте добавить расширение .tar . К имени файла можно также добавить путь к файлу, если вы хотите создать архив в другой директории (то есть отличной от текущей).
  • /путь/к/каталогу — это путь к каталогу, из которого создается архив. Этот путь соотносится с вашим текущим каталогом. Например, если полный путь

/home/user/Pictures , а вы находитесь в каталоге /home , введите /user/Pictures . Имейте в виду, что все подкаталоги также будут включены.

Источник

Архивирование файлов в Linux

В наши дни мы сталкиваемся с файлами архивов очень часто и на всех платформах: Windows, Mac или Linux. Это могут быть программы, резервные копии систем или баз данных или просто архив файлов. Нам также часто приходится создавать свои архивы в Linux, чтобы передать несколько файлов друзьям или загрузить на файлообменник. В виде архивов распространяются пакеты программ, исходные коды, а также много других файлов, распространяемых на просторах интернета. Научиться выполнять архивирование файлов в Linux через терминал очень важно, возможно это вам понадобиться, когда не будет доступа к графическому интерфейсу, или просто со временем в терминале станет более приятно работать.

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

Архивирование в Linux

Важно отметить, что архивирование в linux это не одно и то же что и сжатие файлов linux. Архивирование — это объединение нескольких небольших файлов в один, с целю более удобной последующей передачи, хранения, шифрования или сжатия. Как я уже сказал, архивация выполняется специальными утилитами. Мы не будем трогать архивацию файлов в графическом интерфейсе, вы с ними разберетесь сами, наша тема — терминал.

Самой популярной для Linux утилитой для архивации есть tar. Она используется почти везде, для архивации исходников, упаковки пакетов. Для сжатия используются другие утилиты, в зависимости от алгоритма сжатия, например, zip, bz, xz, lzma и т д. Сначала выполняется архивация, затем сжатие, отдельными программами. Автоматический запуск некоторых утилит сжатия для только что созданного архива поддерживается в tar и других подобных программах с помощью специальных опций.

Также полезной возможностью архивации есть шифрование. Но теперь давайте рассмотрим какие существуют утилиты, с помощью которых выполняется архивирование файлов linux и как ими пользоваться.

Tar — это стандартная утилита, с помощью которой выполняется архивирование файлов Linux. Постепенно из небольшой программы архивации она превратилась в мощный инструмент, поддерживающий работу со многими вариантами архивов и алгоритмами сжатия. Программа поддерживает большое количество параметров. Давайте рассмотрим ее синтаксис и основные параметры:

$ tar опции f файл_для_записи /папка_файлами_для_архива

А теперь разберем основные опции:

  • A — добавить файл к архиву
  • c — создать архив в linux
  • d — сравнить файлы архива и распакованные файлы в файловой системе
  • j — сжать архив с помощью Bzip
  • z — сжать архив с помощью Gzip
  • r — добавить файлы в конец архива
  • t — показать содержимое архива
  • u — обновить архив относительно файловой системы
  • x — извлечь файлы из архива
  • v — показать подробную информацию о процессе работы
  • f — файл для записи архива
  • -C — распаковать в указанную папку
  • —strip-components — отбросить n вложенных папок

Теперь давайте рассмотрим архивирование файлов в Linux. Чтобы создать архив используйте такую команду:

tar -cvf archive.tar.gz /path/to/files

А чтобы распаковать архив tar linux:

tar -xvf archive.tar.gz

Очень просто запомнить для упаковки используется опция cCreate, а для распаковки — x — eXtract.

Сжатый архив создается точно так же, только с опцией -z, это в случае, если использовалось шифрование gizp, если нужно bzip то применяется опция -j:

Читайте также:  How to switch os on mac

tar -zcvf archive.tar.gz /path/to/files

$ tar -zxvf archive.tar.gz

Например, рассмотрим как заархивировать папку в Linux:

tar -zcvf home.tar.gz

Хотя можно поступить по-другому, тот же архив мы получим если сначала создать обычный архив с помощью tar, а потом сжать его утилитой для сжатия, только здесь мы получаем больше контроля над процессом сжатия:

Также можно убрать сжатие:

Утилиты сжатия мы рассмотрим ниже.

Чтобы добавить файл в архив используйте:

tar -rvf archive.tar file.txt

Для извлечения одного файла синтаксис тот же:

tar -xvf archive.tar file.txt

Можно извлечь несколько файлов по шаблону соответствия с помощью параметра wildcard, например, извлечем все php файлы:

tar -xvf archive.tar —wildcards ‘*.php’

По умолчанию распаковать архив tar linux можно в текущую папку с именем архива, чтобы распаковать в нужную папку используйте ключ -C:

tar -xvf archive.tar -C /path/to/dir

Стандартную утилиту рассмотрели, теперь кратко рассмотрим ее альтернативы. Их не так много, и большинство из них уже устаревшие.

Shar позволяет создавать самораспаковывающиеся архивы. По сути, это скрипт оболочки, и для распаковки ему необходима оболочка Bash или другая совместимая с Bourne Shell. У Shar есть несколько преимуществ, но также он потенциально небезопасный, так как архив представляет собой исполняемый файл.

  • -o — сохранять архив в файл вместо стандартного вывода
  • -l — ограничить размер выходного файла
  • -L — ограничить размер выходного файла и разбить его на части
  • -n — имя архива не будет включено в заголовок
  • -a — разрешить автоматическую генерацию заголовков

Примеры использования shar для того чтобы заархивировать папку linux:

Создаем shar архив:

shar file_name.extension > filename.shar

Распаковываем shar архив:

ar — утилита для создания и управления архивами. В основном используется для архивации статических библиотек, но может быть использована для создания любых архивов. Раньше использовалась довольно часто но была вытеснена утилитой tar. Сейчас используется только для создания и обновления файлов статических библиотек.

  • — d — удалить модули из архива
  • — m — перемещение членов в архиве
  • — p — напечатать специфические члены архива
  • — q — быстрое добавление
  • — r — добавить члена к архиву
  • — s — создать индекс архива
  • — a — добавить новый файл к существующему архиву

Теперь рассмотрим примеры использования. Создадим статическую библиотеку libmath.a из объектных файлов substraction.o и division.o:

ar cr libmath.a substraction.o division.o

Теперь извлечем файлы из архива:

Таким образом, можно распаковать любую статическую библиотеку.

cpio — означает Copy in and out (скопировать ввод и вывод). Это еще один стандартный архиватор для Linux. Активно используется в менеджере пакетов Red Hat, а также для создания initramfs. Архивация в Linux для обычных файлов с помощью этой программы не применяется.

  • -a — сбросить время обращения к файлам после их копирования
  • -A — добавить файл
  • -d — создать каталоги при необходимости

Пример использования. Создаем cpio архив:

file1.o file2.o file3.o

ls | cpio -ov > /path/to/output_folder/obj.cpio

Архивирование папки linux выполняется также само.

Сжатие архивов в Linux

Как создать архив в linux рассмотрели. Теперь давайте поговорим о сжатии. Как я говорил, для сжатия используются специальные утилиты. Рассмотрим кратко несколько из них

Чаще всего применяется Gzip. Это стандартная утилита сжатия в Unix/Linux. Для декомпрессии используется gunzip или gzip -d Сначала рассмотрим ее синтаксис:

$ gzip опции файл

$ gunzip опции файл

Теперь разберем опции:

  • -c — выводить архив в стандартный вывод
  • -d — распаковать
  • -f — принудительно распаковывать или сжимать
  • -l — показать информацию об архиве
  • -r — рекурсивно перебирать каталоги
  • -0 — минимальный уровень сжатия
  • -9 — максимальный уровень сжатия

Примеры использования вы уже видели в описании утилиты tar. Например, выполним сжатие файла:

gzip -c файл > архив.gz

А теперь распакуем:

gunzip -c архив.gz

Но чтобы сжать папку в Linux вам придется сначала заархивировать ее с помощью tar, а уже потом сжать файл архива с помощью gzip.

bzip2 — еще одна альтернативная утилита сжатия для Linux. Она более эффективная чем gzip, но работает медленнее. Для распаковки используйте утилиту bunzip2.

Описывать опции bzip2 я не буду, они аналогичны gzip. Чтобы создать архив в Linux используйте:

В текущем каталоге будет создан файл file.bz2

Новый и высокоэффективный алгоритм сжатия. Синтаксис и опции тоже похожи на Gzip. Для распаковки используйте unlzma.

Еще один высокоэффективный алгоритм сжатия. Обратно совместимый с Lzma. Параметры вызова тоже похожи на Gzip.

Кроссплатформенная утилита для создания сжатых архивов формата zip. Совместимая с Windows реализациями этого алгоритма. Zip архивы очень часто используются для обмена файлами в интернете. С помощью этой утилиты можно сжимать как файлы, так и сжать папку linux.

$ zip опции файлы

$ unzip опции архив

  • -d удалить файл из архива
  • -r — рекурсивно обходить каталоги
  • -0 — только архивировать, без сжатия
  • -9 — наилучший степень сжатия
  • -F — исправить zip файл
  • -e — шифровать файлы

Чтобы создать Zip архив в Linux используйте:

zip -r /path/to/files/*

А для распаковки:

Как видите архивирование zip в Linux не сильно отличается от других форматов.

Выводы

Теперь вы знаете все что нужно об архивации файлов в Linux. Мы рассмотрели только консольные команды, так сказать, чтобы была понятна суть. В графическом интерфейсе все еще проще. Если остались вопросы — задавайте их в комментариях.

Источник

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