Командата GNU tar, включена в Linux дистрибуциите, има интегрирана компресия. Той може да създаде архив.tar и след това да го компресира с компресия gzip или bzip2 в една команда. Ето защо полученият файл е файл.tar.gz или файл.tar.bz2.
Компресиране на цяла директория или на отделен файл
Използвайте следната команда, за да компресирате цяла директория или отделен файл на Linux. Той също така ще компресира всяка друга директория в указаната директория - с други думи, тя работи рекурсивно.
tar -czvf name-of-archive.tar.gz /path/to/directory-or-file
Ето какво всъщност означават тези ключове:
- -° С: ° С създаване на архив.
- -z: Компресирайте архива с g ZIP.
- -v: Показване на напредъка в терминала при създаването на архива, известен също като " V ербозен "режим. V е винаги по избор в тези команди, но е полезно.
- -f: Позволява ви да зададете еilename на архива.
Да приемем, че имате директория, наречена "неща" в текущата директория и искате да я запазите във файл, наречен archive.tar.gz. Ще изпълните следната команда:
tar -czvf archive.tar.gz stuff
Или, да кажем, че има директория в / usr / local / something на текущата система и искате да я компресирате във файл, наречен archive.tar.gz. Ще изпълните следната команда:
tar -czvf archive.tar.gz /usr/local/something
Компресирайте няколко директории или файлове наведнъж
Въпреки че тарата често се използва за компресиране на една директория, можете да я използвате и за компресиране на няколко директории, множество отделни файлове или и двете. Трябва само да предоставите списък с файлове или директории вместо едно. Например, да речем, че искате да компресирате директорията / 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
Просто списък на толкова директории или файлове, колкото искате да направите резервно копие.
Изключете директории и файлове
В някои случаи може да искате да компресирате цяла директория, но да не включвате определени файлове и директории. Можете да го направите, като добавите
--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
Използвайте bzip2 Compression Instead
Въпреки че компресията с gzip се използва най-често за създаване на файлове.tar.gz или.tgz, катранът също така поддържа компресията 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
Извличане на архив
След като имате архив, можете да го извлечете с командата tar. Следващата команда ще извлече съдържанието на archive.tar.gz в текущата директория.
tar -xzvf archive.tar.gz
Това е същото като командата за създаване на архив, която използвахме по-горе, с изключение на командата за създаване на архив
-x
превключвателят заменя
-c
ключ. Това указва, че искате да e х тракт архив, вместо да създадете такъв.
Може да искате да извлечете съдържанието на архива в определена директория. Можете да го направите, като го добавите
-C
преминете към края на командата. Например следната команда ще извлече съдържанието на файла archive.tar.gz в директорията / tmp.
tar -xzvf archive.tar.gz -C /tmp
Ако файлът е компресиран с bzip2 файл, заменете "z" в горните команди с "j".
Това е най-простото възможно използване на командата tar. Командата включва голям брой допълнителни опции, така че не е възможно да ги изброим тук. За повече информация. стартирайте info tar команда в черупката, за да видите подробната страница на командата tar. Натисни р, за да излезете от страницата с информация, когато сте готови. Можете също така да прочетете наръчника на катран онлайн.
Ако използвате графичен работен плот на Linux, можете да използвате помощната програма за компресиране на файлове или файловия мениджър, включен в работния плот, за да създавате или извличате файлове.tar. В Windows можете да извличате и създавате.tar архиви със свободната 7-Zip програма.