Команды Linux

Команда tar в Linux

Команда tar в Linux
Tar - это инструмент, который используется для управления сжатыми архивными файлами. Термин «tar» означает «архив на магнитной ленте». Он получил свое название, потому что большое количество системных администраторов Linux / UNIX используют этот инструмент для резервного копирования данных с ленточных накопителей.

Не только системные администраторы используют tar. Большое количество системных компонентов также зависит от tar. Например, в случае Arch Linux или любого дистрибутива на основе Arch pacman является менеджером пакетов по умолчанию. Функциональность pacman сильно зависит от tar. Узнать больше о пакмане.

Для архивирования tar предлагает хорошую и стабильную степень сжатия. Однако результат во многом зависит от используемого файла (ов) и алгоритма сжатия.

Со всеми этими функциями tar - это то, над чем стоит потратить выходные. Шучу ... на самом деле это так просто, что, следуя этому руководству, вы почти почувствуете себя мастером. Без лишних слов, давайте начнем!

Использование дегтя

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

dd if = / dev / urandom of = testFile bs = 2MB count = 1

Расположение смолы

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

какая смола

Как говорится в выходных данных, всякий раз, когда запускается команда «tar», она загружает инструмент из «/ usr / bin / tar».

Архивный файл

Для упаковки файлов в архив tar использует следующую структуру.

деготь

Например, запакуем файл «0.демо »в архив.

tar cvf 0.мусорное ведро.смола 0.демонстрация

Здесь опция «c» указывает tar создать архив, используя 0.демонстрационный файл. Параметр «v» предназначен для включения подробного режима. «F» означает файлы.

Эту аналогичную операцию также можно выполнить с более чем одним файлом.

tar cvf демонстрация.смола *.демонстрация

Сжатие файла

Есть несколько алгоритмов сжатия, доступных для использования с tar. Поддерживаемые алгоритмы включают bzip2, gzip или gunzip и xz. Следующие команды также будут работать для сжатия каталогов в архивы tar.

Для создания сжатого архива с помощью gzip используйте следующую команду. Gzip применяет небольшое сжатие к файлу (файлам).

tar cvzf демонстрация.деготь.gz *.демонстрация

Точно так же для использования xz используйте следующий.

tar cvJf демонстрация.деготь.xz *.демонстрация

Примечание. Обратите внимание на то, что буква «J» заглавная. Кроме того, xz применяет сильное сжатие, поэтому сжатие и распаковка займет время. Однако результат заметно отличается по размеру.

Далее алгоритм сжатия bzip2. Сжимается сильно, но не так сильно, как xz. Сжатие и распаковка быстрее, чем xz, медленнее, чем bzip2 или простое архивирование.

tar cvjf демонстрация.деготь.bz2 *.демонстрация

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

tar --exclude = '*.demo '-cvJf demo.деготь.xz *

Обратите внимание на положение флажка «-exclude». При неправильном расположении этот флаг никак не повлияет на процесс.

Защита паролем

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

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

zip -e

Когда кто-то собирается распаковать, zip запросит пароль.

распаковать

GPG - еще один известный инструмент для безопасного шифрования ваших данных. Используя GPG, мы можем создать надежную защиту наших данных; в данном случае наш любимый tar-архив.

gpg -c

При распаковке вам будет предложено ввести пароль.

gpg .gpg

Извлечение архивов tar

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

tar xvf

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

tar xvf

Как насчет извлечения файлов с использованием подстановочного знака?

tar xvf демонстрация.деготь.bz2 - карты дикой природы *.демонстрация

Листинг всего содержимого

Используя tar, вы можете проверить имена файлов в архиве.

tar tvf

Добавление файлов в существующий архив

Как только архив будет создан, добавление чего-либо внутри будет заблокировано, верно? Неправильный! Tar позволяет добавлять больше файлов и каталогов внутри существующего архива. По сути, вы можете увеличить размер архива до тех пор, пока не столкнетесь с какими-либо серьезными препятствиями (программными или аппаратными).

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

tar rvf

Давайте добавим каталог к ​​существующей «демо.деготь.bz2 ”.

Ой! Я совершенно забыл, что tar не позволяет добавлять файлы в сжатый архив! Эта операция доступна только для несжатых tar-архивов.

Я взял несжатый tar-архив и повторно запустил команду.

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

tar tvf демо.деготь

Проверить архив

На самом деле это не отдельная функция. Он встроен в процедуру создания архива. Когда вы создаете архив, использование этой команды гарантирует, что все файлы будут сохранены на 100% точно.

tar cvWf

Размер архива

Хотя существуют различные способы проверки размера любого файла (включая архивы tar) в UNIX / Linux, аналогичный результат также можно получить с помощью tar.

tar czf - | туалет -c

В этом случае на выходе будет напечатан размер архива в КБ (килобайтах).

Для лучшего формата вывода используйте ls.

ls -l --размер блока = M

Это выведет размер файла в мегабитах. Если вы хотите получить результат в мегабайтах, используйте МБ.

ls -l --размер блока = МБ

Последние мысли

Есть множество флагов и функций, которые tar предлагает каждому. Хотя эти уловки должны удовлетворить почти все потребности, есть еще огромное количество вещей, которые не были рассмотрены в этой статье. Они подробно описаны на страницах man и info tar.

человек смола
Как записать и транслировать игровую сессию в Linux
В прошлом игры считались только хобби, но со временем игровая индустрия увидела огромный рост с точки зрения технологий и количества игроков. Игровая ...
Лучшие игры с отслеживанием рук
Oculus Quest недавно представил отличную идею отслеживания рук без контроллеров. С постоянно растущим числом игр и действий, которые осуществляются фо...
Как показать наложение OSD в полноэкранных приложениях и играх Linux
Игра в полноэкранные игры или использование приложений в полноэкранном режиме без отвлекающих факторов может отрезать вас от соответствующей системной...