Jeśli wędrujesz po świecie open source, prawdopodobnie napotkasz regularnie pliki .tar.gz. Pakiety open source są ogólnie dostępne do pobrania w formatach .tar.gz i .zip.
Polecenie tar
służy do tworzenia archiwów tar przez konwersję grupy plików do archiwum. Obsługuje szeroką gamę programów do kompresji, takich jak gzip, bzip2, lzip, lzma, lzop, xz i compress. Tar został pierwotnie zaprojektowany do tworzenia archiwów do przechowywania plików na taśmie magnetycznej, dlatego ma swoją nazwę „Tape ARchive”.
Gzip jest najpopularniejszym algorytmem kompresji plików tar. Zgodnie z konwencją, nazwa Archiwum tar skompresowane przy użyciu programu gzip powinno kończyć się rozszerzeniem .tar.gz lub .tgz.
Krótko mówiąc, plik kończący się na .tar.gz jest archiwum .tar skompresowanym przy użyciu programu gzip.
Polecenie tar
może być również użyte do wypakowania archiwów tar, wyświetlenia listy plików zawartych w archiwum, dodania dodatkowych plików do istniejącego archiwum, a także różnych innych rodzajów operacji.
W tym samouczku pokażemy, jak rozpakować (lub rozpakować) archiwa tar.gz i tgz.
Rozpakowywanie pliku tar.gz #
Większość dystrybucji Linuksa i macOS ma domyślnie preinstalowane polecenie tar.
Aby wyodrębnić plik tar.gz, użyj --extract
(-x
) i określ nazwę pliku archiwum po opcja:
Polecenie tar
automatycznie wykryje typ kompresji i wypakuj archiwum. To samo polecenie może być użyte do wypakowania archiwów tar skompresowanych innymi algorytmami, takimi jak .tar.bz2.
Jeśli jesteś użytkownikiem pulpitu, a linia poleceń nie jest twoją rzeczą, możesz użyć swojego menedżera plików. Aby wyodrębnić (rozpakować) plik tar.gz, po prostu kliknij prawym przyciskiem myszy plik, który chcesz rozpakować i wybierz „Wypakuj”. Użytkownicy systemu Windows będą potrzebować narzędzia o nazwie 7zip do wyodrębnienia plików tar.gz.
Opcja -v
sprawi, że polecenie tar
będzie bardziej widoczne i wydrukuje nazwy plików wyodrębnianych na terminalu.
Domyślnie tar
rozpakuje zawartość archiwum w bieżącym katalogu roboczym. Użyj --directory
(-C
), aby wyodrębnić pliki archiwum w określonym katalogu:
Na przykład, aby wyodrębnić zawartość archiwum do /home/linuxize/files
, możesz użyć:
Wyodrębnianie określonych plików z pliku tar.gz #
Aby wyodrębnić określone pliki z pliku tar.gz, po nazwie archiwum dodaj oddzieloną spacjami listę nazw plików do rozpakowania:
Podczas wypakowywania plik s, musisz podać ich dokładne nazwy, w tym ścieżkę, wydrukowane przez --list
(-t
).
Wyodrębnianie jeden lub więcej katalogów z archiwum to to samo, co wypakowywanie plików:
Jeśli spróbujesz wypakować plik, który nie istnieje, pojawi się podobny komunikat o błędzie zostanie wyświetlony następujący komunikat:
Możesz także wyodrębnić pliki z pliku tar.gz na podstawie we wzorcu wieloznacznym, używając opcji --wildcards
i zacytując wzorzec, aby zapobiec jego interpretacji przez powłokę.
Na przykład, aby wyodrębnić pliki, których nazwy kończą się na .js
(pliki Javascript), należy użyć:
Wyodrębnianie pliku tar.gz ze standardowego wejścia #
Jeśli wyodrębniasz skompresowany plik tar.gz, odczytując archiwum ze stdin (zwykle przez potok), musisz określić opcję dekompresji. Opcja, która mówi tarowi, aby czytać archiwa przez gzip to -z
.
W poniższym przykładzie pobieramy źródła Blendera przy użyciu wget
i potokuj jego wynik do polecenia tar
:
Jeśli nie t określ opcję dekompresji, tar
wskaże, której opcji powinieneś użyć:
Plik tar.gz z listą #
Aby wyświetlić zawartość pliku tar.gz, użyj opcji --list
(-t
):
Wynik będzie wyglądał mniej więcej tak:
Jeśli dodasz --verbose
(-v
) opcja, tar
wydrukuje więcej informacji, takich jak właściciel, rozmiar pliku , timestamp ..etc:
Wniosek #
Plik tar.gz to archiwum Tar skompresowane za pomocą G zamek błyskawiczny. Aby rozpakować plik tar.gz, użyj polecenia tar -xf
, po którym następuje nazwa archiwum.