Формат файлів .tar.gz є широко використовуваним форматом стисненого архіву в Linux. Він поєднує в собі два процеси: tar (стрічковий архів), який збирає кілька файлів в один, і gzip, який їх стискає. Видобування файлів .tar.gz за допомогою командного рядка Linux є фундаментальною навичкою для системних адміністраторів, розробників та досвідчених користувачів. У цьому посібнику ми розглянемо різні методи ефективного розпакування .tar.gz файлів і дослідимо пов’язані з ними варіанти роботи з цими архівами.
Для користувачів, які працюють на віртуальних або виділених серверах, особливо в середовищах веб-хостингу, таких як AvaHost, вміння керувати архівами .tar.gz є дуже важливим. Незалежно від того, чи розгортаєте ви веб-додатки, чи відновлюєте резервні копії, чи працюєте з вихідними пакетами, знання того, як розпаковувати ці архіви та маніпулювати ними, допомагає спростити управління сервером. AvaHost надає повний root-доступ на серверах на базі Linux, надаючи користувачам інструменти та гнучкість, необхідні для впевненого керування стисненими файлами та автоматизації робочих процесів.
Розуміння формату .tar.gz
Файл .tar.gz складається з:
- .tar (стрічковий архів): Об’єднує декілька файлів в один архів без стиснення.
- .gz (Gzip-архів): Стискає .tar-архів для зменшення його розміру.
Для розпакування таких файлів ми використовуємо команду tar, яка є універсальною утилітою для роботи зі стиснутими і нестиснутими tar-архівами.
Видобування файлів .tar.gz
Основною командою для розпакування .tar.gz файлів є
tar -xvzf archive.tar.gzВидобування до певного каталогу
Щоб витягти вміст до певного каталогу, використовуйте:
tar -xvzf archive.tar.gz -C /path/to/destination/Це гарантує, що файли буде витягнуто до /шлях/до/призначення/, а не до поточного каталогу.
Видобування без докладного виводу
Для тихого видобування (без виведення назв файлів, що видобуваються):
tar -xzf archive.tar.gzПерегляд вмісту файлу .tar.gz
Перед розпакуванням ви можете переглянути вміст архіву:
tar -tzf archive.tar.gzЦе дасть змогу переглянути всі файли і каталоги всередині архіву .tar.gz без їх розпакування.
Видобування одного файлу з архіву .tar.gz
Якщо вам потрібен лише певний файл з архіву, використовуйте:
tar -xvzf archive.tar.gz path/to/file.txtЦе витягне лише шлях/до/файлу.txt, не впливаючи на інші файли в архіві.
Видобування кількох певних файлів
Щоб видобути кілька файлів, перелічіть їх через пробіли:
tar -xvzf archive.tar.gz file1.txt file2.txtРобота з файлами .tar.gz без розпакування
Іноді вам може знадобитися знайти файл всередині архіву без його розпакування. Використовуйте:.tar.gz
tar -tzf archive.tar.gz | grep "filename"Це дозволить відфільтрувати і відобразити файли, які відповідають заданому шаблону.
Розпакування файлу .tar.gz від імені користувача root
У деяких випадках, особливо під час видобування системних файлів, вам можуть знадобитися привілеї суперкористувача:
sudo tar -xvzf archive.tar.gz -C /restricted/path/Робота з великими файлами .tar.gz
Для великих архівів використовуйте команду pv (якщо її встановлено), щоб показати прогрес:
pv archive.tar.gz | tar -xzvf -Крім того, використовуйте параметр :--checkpoint
tar --checkpoint=100 -xvzf archive.tar.gzЦе призведе до виведення повідомлення після кожних 100 видобутих файлів.
Типові помилки та способи їх усунення
1. “tar: Команда не знайдена”
Якщо не встановлено, встановіть його за допомогою:tar
sudo apt install tar # Debian/Ubuntu
sudo yum install tar # CentOS/RHEL2. “Неможливо відкрити: Немає такого файлу або каталогу”
Переконайтеся, що ви перебуваєте в правильному каталозі або вкажіть повний шлях до архіву:
tar -xvzf /full/path/to/archive.tar.gz3. “tar”: Вихід з помилки відкладено через попередні помилки”
Зазвичай це трапляється через проблеми з правами доступу. Спробуйте виконати розархівування від імені користувача root:
sudo tar -xvzf archive.tar.gzВисновок
Витягнення .tar.gz файлів в Linux є простим завданням за допомогою команди tar. Незалежно від того, чи потрібно вам витягти цілий архів, конкретний файл або ефективно обробляти великі файли, знання цих команд покращить ваш робочий процес у Linux. Якщо ви часто працюєте з архівами .tar.gz, подумайте про автоматизацію видобування за допомогою командних сценаріїв, щоб заощадити час і зусилля.


