- Архиватор tar
- Содержание
- Использование
- Создание архива
- Распаковка архива
- Просмотр содержимого архива
- Прочие возможности
- Примеры Использования Команды Tar в Linux
- Как использовать Tar в Linux
- Создание файла .tar в Linux
- Создание файла .tar.gz в Linux
- Создание файла .tar.bz2 в Linux
- Как разархивировать файлы .tar в Linux
- Как вывести список содержимого архива в Linux
- Как извлечь только один файл из архива .tar
- Как извлечь несколько файлов из архивов .tar
- Извлечь несколько файлов за критерием
- Как добавить файлы в архив .tar
- Как проверить архив .tar в Linux
- Как проверить размер архива в Linux
- Итоги
- Команда Tar в Linux. Cоздание и распаковка архивов
- Tar Command in Linux (Create and Extract Archives)
- В этом руководстве мы покажем вам, как использовать tar команду для извлечения, просмотра и создания архивов tar на практических примерах и подробных объяснениях наиболее распространенных параметров tar.
- Синтаксис команды Tar
- Создание Tar Архив
- Создание архива Tar Gz
- Создание архива Tar Bz2
- Листинг Тар Архивы
- Извлечение Тар Архив
- Извлечение архива Tar в другой каталог
- Извлечение архивов Tar Gz и Tar Bz2
- Извлечение определенных файлов из архива Tar
- Извлечение файлов из архива Tar с использованием подстановочного знака
- Добавление файлов в существующий архив Tar
- Удаление файлов из архива Tar
- Вывод
Архиватор tar
Содержание
tar — наиболее распространенный архиватор, используемый в Linux-системах. Сам по себе tar не является архиватором в привычном понимании этого слова, т.к. он самостоятельно не использует сжатие. В то же время, многие архиваторы (например, Gzip или bzip2) не умеют сжимать несколько файлов, а работают только с одним файлом или входным потоком. Поэтому чаще всего эти программы используются вместе. tar создает несжатый архив, в который помещаются выбранные файлы и каталоги, при этом сохраняя некоторые их атрибуты (такие как права доступа). После этого полученный файл *.tar сжимается архиватором, например, gzip . Вот почему архивы обычно имеют расширение .tar.gz или .tar.bz2 (для архиваторов gzip и bzip2 соответственно)
Использование
tar запускается с обязательным указанием одного из основных действий, самые распространенные из которых — создание и распаковка архивов, далее задаются прочие параметры, зависящие от конкретной операции.
Создание архива
Для создания архива нужно указать tar соответствующее действие, что делается с помощью ключа -c . Кроме того, для упаковки содержимого в файл необходим ключ -f 1) . Далее укажем сначала имя будущего архива, а затем те файлы, которые хотим упаковать.
Эта команда упакует все файлы с расширением txt в архив txt.tar. Так и создается простейший архив без сжатия. Для использования сжатия не нужно запускать что-либо еще, достаточно указать tar, каким архиватором следует сжать архив. Для двух самых популярных архиваторов gzip и bzip2 ключи будут -z и -j соответственно.
/files со всем содержимым в сжатый с помощью gzip архив.
создаст аналогичный архив, используя для сжатия bzip2.
Ключ -v включает вывод списка упакованных файлов в процессе работы. К сожалению, более продвинутой индикации хода процесса (например, указания степени готовности в процентах) в tar не предусмотрено. Для этого используйте графические архиваторы (например, Xarchiver) или пользуйтесь средствами файл-менеджера.
Помимо gzip и bzip2 можно использовать, например, lzma (ключ –lzma ) или xz (ключ -J ), при этом соответствующий архиватор должен быть установлен в системе.
Распаковка архива
Действие «распаковка» задается с помощью ключа -x . И тут снова потребуется ключ -f для указания имени файла архива. Также добавим ключ -v для визуального отображения хода процесса.
распакует содержимое архива в текущую папку. Альтернативное место для распаковки можно указать с помощью ключа -C :
Просмотр содержимого архива
Для просмотра содержимого архива используйте следующую команду:
Она выведет простой список файлов и каталогов в архиве. Если же добавить ключ -v , будет выведен подробный список с указанием размера, прав доступа и прочих параметров (так же, как по ls -l )
Прочие возможности
tar предоставляет множество полезных возможностей. Например, можно указать файлы и каталоги, которые не будут включены в архив, добавить файлы в существующий архив, взять список объектов для запаковки из текстового файла и много что ещё. Во всем многообразии опций как всегда поможет разобраться
Источник
Примеры Использования Команды Tar в Linux
Tar — одна из наиболее широко используемых команд Linux для сжатия. Использование tar даёт много преимуществ, за что её и любят специалисты, имеющие дело с командной строкой Linux. Дальше мы поговорим об этих преимуществах, а также рассмотрим основные примеры использования утилиты.
Tar расшифровывается как «Tape archive» и используется для сжатия файлов и папок.
В большинстве случаев результатом сжатия с использованием утилиты tar является файл с расширением .tar. Последующие сжатия выполняются с помощью gzip, в результате получаем файл .tar.gz.
С помощью tar вы можете сжимать и распаковывать файлы. Tar имеет много опций, но некоторые из них вам, возможно, придётся запомнить.
- Tar довольно эффективно сжимает файлы, степень сжатия — 50%;
- Значительно уменьшает размер упакованных файлов и папок;
- Tar не изменяет свойства файлов и каталогов. Разрешения и другие функции остаются неизменными;
- Tar доступна в большинстве версий Linux, в том числе и в более старых, а также в прошивке Android;
- Быстро сжимает и разжимает содержимое;
- Простая в использовании.
Теперь, когда мы разобрались с преимуществами tar, стоит ответить на ещё один вопрос: при каких сценариях используется эта утилита?
- Если вы работаете в системах на базе Linux и вам нужно сжать файлы;
- Вам нужно перенести огромную коллекцию файлов и папок с одного сервера на другой;
- Нужно сделать резервную копию сайта, данных или чего-либо ещё;
- Чтобы уменьшить использование места в вашей системе;
- Для загрузки и скачивания папок.
Как использовать Tar в Linux
Давайте узнаем, какие основные операции вы можете выполнять с помощью tar. Но прежде чем мы начнём, вам нужно будет подключиться к вашему VPS-серверу по SSH. Вот руководство, которое вам поможет!
Создание файла .tar в Linux
Вы можете сжимать как файлы, так и папки. В обоих случаях в результате вы получите архив с расширением .tar. Пример создания такого архива:
Здесь /home/primerArhiva — это каталог, который необходимо сжать, в результате чего мы получим primerArhiva.tar.
В команде используются параметры –cvf, которые реализуют следующие модификации:
- c – создает новый файл .tar;
- v – выводит подробное описание процесса сжатия;
- f – имя файла.
Создание файла .tar.gz в Linux
Если вы хотите добиться ещё большего сжатия, создайте архив .tar.gz. Вот пример:
Дополнительная опция z представляет сжатие gzip. Как вариант, вы также можете создать архив .tgz, похожий на tar.gz. Например:
Создание файла .tar.bz2 в Linux
Файлы архива .bz2 имеют ещё больший уровень сжатия, чем файлы, сжатые с gzip. Однако для сжатия и распаковки потребуется больше времени. Чтобы создать архив, вам нужно использовать опцию -j. Пример операции:
Похожие варианты сжатия — .tar.tbz и .tar.tb2. Например:
Как разархивировать файлы .tar в Linux
Команду tar также можно использовать для извлечения файлов. Следующая команда извлечет файлы в текущий каталог:
Если вы хотите распаковать файлы в другой каталог, используйте опцию -C. Например:
Аналогичную команду можно использовать для распаковки файлов .tar.gz:
.tar.bz2, .tar.tbz или .tar.tb2 файлы могут быть распакованы аналогично. Для этого введите следующую команду в командной строке:
Как вывести список содержимого архива в Linux
После создания архива вы можете просмотреть его содержимое с помощью подобной команды:
Команда выведет полный список файлов с отметками времени и разрешениями. Используйте аналогичную команду для .tar.gz:
Такой вариант подходит и для файлов .tar.bz2:
Как извлечь только один файл из архива .tar
Вы можете извлечь необходимый вам файл, не распаковывая остальные файлы архива. Один из таких примеров показан ниже:
Здесь primer.sh — это тот единственный файл, который будет извлечён из primerArhiva.tar. В качестве альтернативы вы также можете использовать следующую команду:
Чтобы извлечь только один файл из .tar.gz, вы можете использовать команду, аналогичную показанной ниже:
Или аналогичную команду:
Чтобы извлечь один файл из .tar.bz2, воспользуйтесь командой:
Или аналогичную команду:
Как видите, команда tar имеет довольно гибкий синтаксис.
Как извлечь несколько файлов из архивов .tar
Если вы хотите извлечь несколько файлов, используйте следующий формат команды:
Соответственно для .tar.gz команда будет выглядеть так:
Для .tar.bz2:
Извлечь несколько файлов за критерием
Если вы хотите извлечь из архива только определённые файлы, например только .jpg, используйте метасимволы. Пример такой команды показан ниже:
Для .tar.gz введите:
Для .tar.bz2:
Как добавить файлы в архив .tar
Вы можете не только извлекать, но и добавлять выбранные файлы в существующий архив. Для этого мы будем использовать параметр -r, который означает добавление. Tar может добавлять как файлы, так и каталоги.
Ниже приведён пример, в котором мы добавляем primer.jpg в существующий файл primerArhiva.tar.
Мы также можем добавить каталог. В примере ниже каталог image_dir был добавлен в primerArhiva.tar.
Вы не можете добавлять файлы или папки в архивы .tar.gz или .tar.bz2.
Как проверить архив .tar в Linux
Используя tar, вы также можете проверить целостность созданного архива. Вот один из способов, как это можно сделать:
Данная команда не применима к файлам .tar.gz или .tar.bz2.
Как проверить размер архива в Linux
Вы также можете проверить размер созданного архива. Размер будет указан в КБ (килобайтах).
Ниже приведены примеры команды с разными архивными файлами:
Итоги
Как видите, tar — действительно мощный инструмент, который должен знать каждый специалист, имеющий дело с терминалом Linux.
Мы надеемся, что эта статья помогла вам разобраться с особенностями использования tar в Linux! Вы также можете изучить подробную инструкцию по этой утилите, вызвав справку с помощью команды man tar. Увидимся в следующем руководстве!
Ольга уже около пяти лет работает менеджером в сфере IT. Написание технических заданий и инструкций — одна из её главных обязанностей. Её хобби — узнавать что-то новое и создавать интересные и полезные статьи о современных технологиях, веб-разработке, языках программирования и многом другом.
Источник
Команда Tar в Linux. Cоздание и распаковка архивов
Tar Command in Linux (Create and Extract Archives)
В этом руководстве мы покажем вам, как использовать tar команду для извлечения, просмотра и создания архивов tar на практических примерах и подробных объяснениях наиболее распространенных параметров tar.
Команда tar используется для создания архивов tar путем преобразования группы файлов в архив. Он также имеет возможность извлекать архивы tar, отображать список файлов, включенных в архив, добавлять дополнительные файлы в существующий архив, а также выполнять различные другие операции.
Изначально Tar был предназначен для создания архивов для хранения файлов на магнитной ленте, поэтому он имеет название « T ape AR chive».
Синтаксис команды Tar
Существует две версии tar, BSD tar и GNU tar с некоторыми функциональными различиями. Большинство систем Linux поставляются с GNU tar, предварительно установленным по умолчанию.
Общий синтаксис tar команды выглядит следующим образом:
- OPERATION — Допускается и требуется только один аргумент операции. Наиболее часто используемые операции:
- —create ( -c ) — Создать новый архив tar.
- —extract ( -x ) — Извлечение всего архива или одного или нескольких файлов из архива.
- —list ( -t ) — Показать список файлов, включенных в архив
- OPTIONS — Наиболее часто используемые операции:
- —verbose ( -v ) — Показать файлы, обрабатываемые командой tar.
- —file=archive=name ( -f archive-name ) — указывает имя файла архива.
- ARCHIVE_NAME — название архива.
- FILE_NAME(s) — Разделенный пробелами список имен файлов для извлечения из архива. Если не предоставлено, весь архив извлекается.
При выполнении команд tar вы можете использовать длинную или короткую форму tar операций и опций. Длинные формы более читабельны, а короткие — быстрее набираются. Параметры длинной формы начинаются с двойной черты ( — ). Параметры краткой формы имеют префикс с одной чертой ( — ), который может быть опущен.
Создание Tar Архив
Для создания архива tar используйте -c опцию -f и имя архива.
Например, чтобы создать архив с именем archive.tar из файлов с именами file1 , file2 , file3 вы бы выполнить следующую команду:
Вот эквивалентная команда, использующая параметры длинной формы:
Вы можете создавать архивы из содержимого одного или нескольких каталогов или файлов. По умолчанию каталоги архивируются рекурсивно, если —no-recursion не указан параметр.
В следующем примере создается архив с именем user_backup.tar в /home/user каталоге:
Используйте эту -v опцию, если вы хотите увидеть файлы, которые обрабатываются.
Создание архива Tar Gz
Gzip — самый популярный алгоритм сжатия tar-файлов. При сжатии архивов tar с помощью gzip имя архива должно заканчиваться либо либо, tar.gz либо tgz .
-z Опция сообщает деготь сжать архив , используя gzip алгоритм , как он будет создан. Например, чтобы создать архив tar.gz из заданных файлов, вы должны использовать следующую команду:
Создание архива Tar Bz2
Другой популярный алгоритм для сжатия tar-файлов — это bzip2. При сжатии архивов tar с помощью bzip2 имя архива должно заканчиваться либо либо, tar.bz2 либо tbz .
Когда -j опция указана, tar будет использовать bzip2 алгоритм для сжатия архива. Следующая команда создаст tar.bz2 архив из заданных файлов:
Листинг Тар Архивы
При использовании с параметром —list ( -t ) tar команда выведет список содержимого архива tar без его извлечения. Команда ниже, выведет список содержимого archive.tar файла:
В выводе будут перечислены имена всех файлов в архиве:
Для получения дополнительной информации, такой как владелец файла, размер файла, отметка времени, используйте параметр —verbose ( -v ):
Извлечение Тар Архив
Большинство архивных файлов в Linux архивируются и сжимаются в формате tar или tar.gz. Очень важно знать, как извлечь эти файлы из командной строки.
Чтобы извлечь архив tar, используйте параметр —extract ( -x ), за которым следует имя архива:
Также распространено добавлять -v опцию для печати имен извлекаемых файлов.
Извлечение архива Tar в другой каталог
По умолчанию tar извлекает содержимое архива в текущем рабочем каталоге . Используйте —directory ( -C ) для извлечения архивных файлов в определенном каталоге:
Например, чтобы извлечь содержимое архива в /opt/files каталог, вы можете использовать:
Извлечение архивов Tar Gz и Tar Bz2
При извлечении сжатых архивов, таких как tar.gz или tar.bz2 вам не нужно указывать опцию распаковки. Команда такая же, как при извлечении tar архива:
Извлечение определенных файлов из архива Tar
Иногда вместо того, чтобы извлечь весь архив, вам может потребоваться извлечь из него только несколько файлов.
Чтобы извлечь конкретные файлы из архива tar, добавьте разделенный пробелами список имен файлов, которые нужно извлечь после имени архива:
При извлечении файлов вы должны указать их точные имена, включая путь, как указано в —list ( -t ).
Извлечение одного или нескольких каталогов из архива аналогично извлечению файлов:
Если вы попытаетесь извлечь файл, который не существует, появится сообщение об ошибке, подобное следующему:
Извлечение файлов из архива Tar с использованием подстановочного знака
Чтобы извлечь файлы из архива на основе шаблона с подстановочными знаками, используйте —wildcards переключатель и заключите шаблон в кавычки, чтобы оболочка не интерпретировала его.
Например, чтобы извлечь файлы, имена которых оканчиваются на .js (файлы Javascript), вы можете использовать:
Добавление файлов в существующий архив Tar
Чтобы добавить файлы или каталоги в существующий архив tar, используйте операцию —append ( -r ).
Например, чтобы добавить файл с именем newfile в archive.tar, вы должны выполнить:
Удаление файлов из архива Tar
Используйте —delete операцию для удаления файлов из архива.
В следующем примере показано, как удалить файл file1 из archive.tar,:
Вывод
Наиболее распространенное использование этой tar команды — создание и извлечение архива tar. При извлечении архива используйте tar -xf команду, за которой следует имя архива, и для создания нового используйте tar -czf команду, за которой следуют имя архива и файлы и каталоги, которые вы хотите добавить в архив.
Источник