Формат файлов .tar.gz – это широко используемый формат сжатых архивов в Linux. Он объединяет два процесса: tar (ленточный архив), который собирает несколько файлов в один, и gzip, который сжимает их. Извлечение файлов .tar.gz через командную строку Linux является фундаментальным навыком для системных администраторов, разработчиков и опытных пользователей. В этом руководстве мы рассмотрим различные методы эффективного извлечения файлов .tar.gz и изучим связанные с ними возможности работы с этими архивами.
Для пользователей, работающих с виртуальными частными или выделенными серверами, особенно в таких средах веб-хостинга, как AvaHost, умение работать с архивами .tar.gz крайне важно. Будь то развертывание веб-приложений, восстановление резервных копий или работа с исходными пакетами, знание того, как извлекать эти архивы и работать с ними, помогает упростить управление сервером. AvaHost предоставляет полный root-доступ на серверах на базе Linux, обеспечивая пользователей инструментами и гибкостью, необходимыми для уверенного управления сжатыми файлами и автоматизации рабочих процессов.
Файл .tar.gz состоит из:
Для извлечения таких файлов используется команда tar, которая является универсальной утилитой для работы со сжатыми и несжатыми tar-архивами.
Основной командой для извлечения файлов .tar.gz является:
tar -xvzf archive.tar.gzЧтобы извлечь содержимое в определенную директорию, используйте:
tar -xvzf archive.tar.gz -C /path/to/destination/Это гарантирует, что файлы будут извлечены в /path/to/destination/, а не в текущий каталог.
Для бесшумного извлечения (без отображения имен извлекаемых файлов):
tar -xzf archive.tar.gzПеред извлечением вы можете захотеть просмотреть содержимое архива:
tar -tzf archive.tar.gzЭто позволит просмотреть все файлы и каталоги в архиве .tar.gz без их извлечения.
Если вам нужен только определенный файл из архива, используйте:
tar -xvzf archive.tar.gz path/to/file.txtЭто извлечет только файл path/to/file.txt, не затрагивая другие файлы в архиве.
Чтобы извлечь несколько файлов, перечислите их через пробел:
tar -xvzf archive.tar.gz file1.txt file2.txtИногда вам может понадобиться найти файл в архиве  без его извлечения. Используйте:.tar.gz
tar -tzf archive.tar.gz | grep "filename"Это позволит отфильтровать и отобразить файлы, соответствующие заданному шаблону.
В некоторых случаях, особенно при извлечении системных файлов, вам могут понадобиться привилегии суперпользователя:
sudo tar -xvzf archive.tar.gz -C /restricted/path/Для больших архивов используйте команду pv (если она установлена), чтобы показать прогресс:
pv archive.tar.gz | tar -xzvf -В качестве альтернативы используйте опцию :--checkpoint
tar --checkpoint=100 -xvzf archive.tar.gzЭто будет выводить сообщение через каждые 100 извлеченных файлов.
Если  не установлен, установите его, используя:tar
sudo apt install tar  # Debian/Ubuntu
sudo yum install tar  # CentOS/RHELУбедитесь, что вы находитесь в правильной директории, или укажите полный путь к архиву:
tar -xvzf /full/path/to/archive.tar.gzОбычно это происходит из-за проблем с правами доступа. Попробуйте извлечь от имени root:
sudo tar -xvzf archive.tar.gzИзвлечение файлов .tar.gz в Linux – простая задача с помощью команды tar. Если вам нужно извлечь весь архив, конкретный файл или эффективно работать с большими файлами, освоение этих команд улучшит ваш рабочий процесс в Linux. Если вы часто работаете с архивами .tar.gz, подумайте об автоматизации извлечения с помощью сценариев оболочки, чтобы сэкономить время и силы.