Как сжать и извлечь файлы с помощью команды tar в Linux

Оглавление:

Как сжать и извлечь файлы с помощью команды tar в Linux
Как сжать и извлечь файлы с помощью команды tar в Linux

Видео: Как сжать и извлечь файлы с помощью команды tar в Linux

Видео: Как сжать и извлечь файлы с помощью команды tar в Linux
Видео: Удали эти программы ПРЯМО СЕЙЧАС! Windows 10/11 (2021-2022) - YouTube 2024, Апрель
Anonim
Команда tar в Linux часто используется для создания архивов.tar.gz или.tgz, также называемых «tarballs». Эта команда имеет большое количество опций, но вам просто нужно запомнить несколько букв, чтобы быстро создавать архивы с tar, Команда tar также может извлекать полученные архивы.
Команда tar в Linux часто используется для создания архивов.tar.gz или.tgz, также называемых «tarballs». Эта команда имеет большое количество опций, но вам просто нужно запомнить несколько букв, чтобы быстро создавать архивы с tar, Команда tar также может извлекать полученные архивы.

Команда tar GNU, включенная в дистрибутивы Linux, имеет встроенное сжатие. Он может создать архив.tar, а затем сжать его с помощью сжатия gzip или bzip2 в одной команде. Вот почему полученный файл является файлом.tar.gz или.tar.bz2.

Сжатие всей директории или одного файла

Используйте следующую команду для сжатия всего каталога или одного файла в Linux. Он также сжимает каждый другой каталог внутри указанного вами каталога - другими словами, он работает рекурсивно.

tar -czvf name-of-archive.tar.gz /path/to/directory-or-file

Вот что означают эти коммутаторы:

  • -c: С создать архив.
  • -z: Сжать архив с помощью g Z ф.
  • -v: Показывать прогресс в терминале при создании архива, также известный как " verbose ". V всегда является необязательным в этих командах, но это полезно.
  • -f: Позволяет указать е Идентификатор архива.

Предположим, у вас есть каталог с именем «stuff» в текущем каталоге, и вы хотите сохранить его в файл с именем archive.tar.gz. Вы должны выполнить следующую команду:

tar -czvf archive.tar.gz stuff

Или, скажем, есть каталог в / usr / local / something в текущей системе, и вы хотите сжать его в файл с именем archive.tar.gz. Вы должны выполнить следующую команду:

tar -czvf archive.tar.gz /usr/local/something

Image
Image

Сжатие нескольких каталогов или файлов одновременно

Хотя tar часто используется для сжатия одного каталога, вы также можете использовать его для сжатия нескольких каталогов, нескольких отдельных файлов или обоих. Просто укажите список файлов или каталогов вместо одного. Например, предположим, вы хотите сжать каталог / home / ubuntu / Downloads, каталог / usr / local / stuff и файл /home/ubuntu/Documents/notes.txt. Вы просто выполните следующую команду:

tar -czvf archive.tar.gz /home/ubuntu/Downloads /usr/local/stuff /home/ubuntu/Documents/notes.txt

Просто перечислите столько каталогов или файлов, сколько хотите создать резервную копию.

Image
Image

Исключить каталоги и файлы

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

--exclude

переключатель для каждого каталога или файла, который вы хотите исключить.

Например, предположим, что вы хотите сжать / home / ubuntu, но вы не хотите сжимать каталоги / home / ubuntu / Downloads и /home/ubuntu/.cache. Вот как вы это сделаете:

tar -czvf archive.tar.gz /home/ubuntu --exclude=/home/ubuntu/Downloads --exclude=/home/ubuntu/.cache

--exclude

переключатель очень мощный. Он не требует имен каталогов и файлов - он фактически принимает шаблоны. С этим вы можете многое сделать. Например, вы можете архивировать весь каталог и исключать все файлы.mp4 со следующей командой:

tar -czvf archive.tar.gz /home/ubuntu --exclude=*.mp4

Image
Image

Использовать сжатие bzip2 вместо

В то время как сжатие gzip наиболее часто используется для создания файлов.tar.gz или.tgz, tar также поддерживает сжатие bzip2. Это позволяет создавать файлы, сжатые bzip2, часто называемые.tar.bz2,.tar.bz или.tbz файлы. Для этого просто замените -z для gzip в командах здесь с -j для bzip2.

Gzip работает быстрее, но он, как правило, сжимается немного меньше, поэтому вы получаете несколько больший файл. Bzip2 работает медленнее, но он сжимается немного больше, поэтому вы получаете несколько меньший файл. Gzip также более распространен, с некоторыми урезанными Linux-системами, включая поддержку gzip по умолчанию, но не поддержкой bzip2. В общем, gzip и bzip2 практически одинаковы, и оба будут работать аналогичным образом.

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

tar -cjvf archive.tar.bz2 stuff

Image
Image

Извлечь архив

После того, как у вас есть архив, вы можете извлечь его с помощью команды tar. Следующая команда будет извлекать содержимое archive.tar.gz в текущий каталог.

tar -xzvf archive.tar.gz

Это то же самое, что и команда создания архива, которую мы использовали выше, кроме

-x

переключатель заменяет

-c

переключатель. Это указывает, что вы хотите Икс трактуйте архив, а не создавайте его.

Вы можете захотеть извлечь содержимое архива в конкретный каталог. Вы можете сделать это, добавив

-C

перейдите в конец команды. Например, следующая команда будет извлекать содержимое файла archive.tar.gz в каталог / tmp.

tar -xzvf archive.tar.gz -C /tmp

Если файл является сжатым файлом bzip2, замените «z» в приведенных выше командах «j».

Image
Image

Это самое простое использование команды tar. Команда включает большое количество дополнительных опций, поэтому мы не можем перечислить их все здесь. Для дополнительной информации. запустить info tar команду в командной оболочке, чтобы просмотреть подробную страницу страницы tar-команды. нажмите Q для выхода из информационной страницы, когда вы закончите. Вы также можете прочитать руководство по tar в Интернете.

Если вы используете графический рабочий стол Linux, вы также можете использовать утилиту сжатия файлов или файловый менеджер, входящую в состав вашего рабочего стола, для создания или извлечения файлов.tar. В Windows вы можете извлекать и создавать архивы.tar с помощью бесплатной утилиты 7-Zip.

Рекомендуемые: