Polecenie tar jest skrótem od archiwum taśmowe w Linuksie. To polecenie służy do tworzenia archiwum i rozpakowywania plików archiwum. W Linuksa , jest to jedno z podstawowych poleceń ułatwiających funkcjonalność archiwizacji. Możemy użyć tego polecenia do tworzenia nieskompresowanych i skompresowanych plików archiwów, a także modyfikowania ich i konserwacji.
Tar to narzędzie oprogramowania komputerowego służące do gromadzenia kilku plików w jednym pliku archiwum w komputerze. Często nazywany jest tarballem do celów tworzenia kopii zapasowych i dystrybucji. Tytuł pochodzi z „archiwum taśmowego”, ponieważ w rzeczywistości został opracowany w celu określenia danych na sekwencyjnych urządzeniach we/wy nie korzystających z żadnego z ich systemów plików. Grupy danych archiwalnych utworzone przez tar zawierają wiele parametrów systemu plików, takich jak organizacja katalogów, uprawnienia dostępu do plików, własność, znaczniki czasu i nazwa. Na rzecz pax, POSIX porzucił tar, tar jest jednak szeroko stosowany.
Po pierwsze, został on ogłoszony w wersji 7 Uniksa w styczniu 1979 roku, zastępując program tp. Aby przechowywać dane, struktura plików została ujednolicona w POSIX.1-1988 i później POSIX.1-2001 i stała się wzorcem obsługiwanym przez prawie wszystkie nowoczesne systemy archiwizacji plików. Systemy operacyjne podobne do Uniksa zazwyczaj zawierają narzędzia do obsługi plików tar i narzędzia używane do ich kompresji, takie jak bzip2 i gzip.
Od aktualizacji Microsoft z 10 kwietnia 2018 r. BSD-tar jest zawarty w systemie Microsoft Windows i istnieją dwa lub więcej narzędzi innych firm do odczytywania i zapisywania tych wzorców w systemie Windows.
Formaty plików tar
Dostępnych jest wiele formatów plików tar, w tym aktualne i historyczne. W POSIX zapisano dwa formaty tar: pax i ustar.
nagłówek
Rekord nagłówka pliku zawiera metadane pliku. W rekordzie nagłówka informacje są kodowane w standardach ASCII, aby zapewnić elastyczność w różnych architekturach przy użyciu różnej kolejności bajtów. Dlatego też, jeśli każdy plik w archiwum jest plikiem tekstowym ASCII i zawiera nazwy ASCII, archiwum jest plikiem tekstowym ASCII (zawierającym kilka znaków NUL).
W poniższej tabeli wymieniono kilka pól zdefiniowanych przez rzeczywisty format tar uniksowy. Tabela typów plików/wskaźników łączy zawiera kilka nowoczesnych rozszerzeń. Pole jest wypełniane różnymi bajtami NUL, jeśli nie jest używane.
Nagłówek tar sprzed POSIX.1-1988:
Pole | Rozmiar pola | Przesunięcie pola |
---|---|---|
Nazwa pliku | 100 | 0 |
Tryb plików | 8 | 100 |
Numeryczny identyfikator użytkownika właściciela | 8 | 108 |
Numeryczny identyfikator użytkownika grupy | 8 | 116 |
Rozmiar pliku w bajtach | 12 | 124 |
Czas ostatniej modyfikacji w postaci liczbowego czasu uniksowego | 12 | 136 |
Suma kontrolna rekordu nagłówka | 8 | 148 |
Wskaźnik łącza | 1 | 156 |
Nazwa połączonego pliku | 100 | 157 |
Format Ustartu
W formacie Ustar prawie każdy współczesny program tar zapisuje i odczytuje archiwa, ogłoszone przez standard POSIX IEEE P1003.1 z 1988 roku. Wprowadzono dodatkowe pola nagłówka. Poprzednie programy tar unikały dodatkowych informacji, ale nowe programy sprawdzają obecność ciągu „Ustar”, aby zdecydować, czy używany jest nowszy format.
konwersja daty na ciąg
Pole | Rozmiar pola | Przesunięcie pola |
---|---|---|
Wiele pól, jak w poprzednim formacie | 156 | 0 |
Wpisz flagę | 1 | 156 |
Pole podobne jak w poprzednim formacie | 100 | 157 |
„ustar” Wskaźnik Ustar, następnie NUL | 6 | 257 |
Wersja „00” Ustara | 2 | 263 |
Nazwa użytkownika właściciela | 32 | 265 |
Nazwa grupy właściciela | 32 | 297 |
Numer główny urządzenia | 8 | 329 |
Drobny numer urządzenia | 8 | 337 |
Prefiks nazwy pliku | 155 | 3. 4. 5 |
POSIX.1-2001/os
Firma Sun zaproponowała technikę dodawania rozszerzeń do formatu tar w 1997 r. Później została ona zatwierdzona jako standard POSIX.1-2001. Format ten nazywany jest formatem pax lub rozszerzonym formatem tar. Niektóre znaczniki są określone przez standard POSIX, w tym mtime, atime, linkpath, gname, uname, sizes, gid, uid oraz definicja zestawu znaków dla nazw grup/użytkowników i nazw ścieżek.
Kluczowe implementacje tar
Kluczowe implementacje są wymienione w kolejności pochodzenia:
Ponadto większość implementacji cpio i pax może tworzyć i czytać dwa lub więcej typów plików tar.
Składnia polecenia tar:
tar [options] [archive-file] [directory or file to be archived]
Opcje w poleceniu tar
Poniżej wymieniono różne opcje polecenia tar:
Wprowadzenie do pliku archiwum
Plik archiwum można zdefiniować jako plik zawierający wiele plików z metadanymi. Pliki te służą do gromadzenia więcej niż jednego pliku danych w pojedynczym pliku, co ułatwia przechowywanie i przenoszenie. Można go również używać do kompresowania plików, aby zająć mniej miejsca na dysku.
Przykłady poleceń tar
Niektóre z ważnych przykładów, które są powszechnie używane w poleceniu tar, są następujące:
1. Tworzenie nieskompresowanego archiwum tar z opcją -cvf
Ta opcja powoduje, że plik tar jest nazywany plik.tar . Jest to archiwum wszystkich znajdujących się w nim plików .txt mójkat informator.
Polecenie jest następujące:
$ tar cvf file.tar *.txt
2. Wyodrębnianie plików przez archiwum za pomocą opcji -xvf
Ta opcja umożliwia wyodrębnianie plików poprzez archiwa.
Polecenie jest następujące:
$ tar xvf file.tar
3. Kompresja gzip przez archiwum tar z opcją -z
Ta opcja powoduje, że plik tar jest nazywany plik.tar.gz. Jest to archiwum każdego pliku .txt.
Polecenie jest następujące:
filmy123 do
$ tar cvzf file.tar.gz *.txt
4. Wyodrębnianie archiwum tar gzip za pomocą opcji -xvzf
Ta opcja umożliwia wyodrębnienie plików za pośrednictwem plików zarchiwizowanych w formacie tar file.tar.gz.
Polecenie jest następujące:
$ tar xvzf file.tar.gz
5. Tworzenie skompresowanych plików tar z opcją -j
Ta opcja pomoże nam tworzyć i kompresować pliki archiwalne. Zarówno dekompresja, jak i kompresja zajmują więcej czasu w porównaniu do gzip.
Polecenie jest następujące:
$ tar cvfj file.tar.tbz hello1.txt
6. Rozpakuj pojedynczy określony katalog lub plik w systemie Linux
Ta opcja służy do rozpakowania dowolnego pliku w naszym bieżącym katalogu lub w określonym katalogu za pomocą opcji -C.
Polecenie jest następujące:
blokuj reklamy na YouTube na Androida
$ tar -xvf file.tar -C file's path in the directory
Lub,
$ tar -xvf file.tar
7. Rozpakuj wiele plików .tar.tbz, .tar.gz, .tar w systemie Linux
Ta opcja nam w tym pomoże rozpowszechnianie się lub wyodrębnij więcej niż jeden plik z plików tar.bz2, tar.gz i pliku archiwum tar.
Przykład tej opcji jest następujący:
$ tar -jxvf file.tar.tbz 'hello1.txt'
Lub,
$ tar -zxvf file.tar.gz 'hello1.txt' 'hello2.txt'
Lub,
$ tar -xvf file.tar 'hello1.txt' 'hello2.txt'
8. Sprawdź rozmiar istniejącego pliku tar.tbz, tar.gz, tar
Polecenie pomoże nam wyświetlić rozmiar pliku archiwum w kilobajtach (KB), o którym mowa powyżej.
Polecenie jest następujące:
$ tar -czf - file2.tar.tbz | wc -c
Lub,
$ tar -czf - file1.tar.gz | wc -c
Lub,
$ tar -czf - file.tar | wc -c
9. Zaktualizuj istniejący plik tar
W systemie Linux polecenie aktualizacji istniejącego pliku tar wygląda następująco:
$ tar rvf file.tar *.txt
10. Lista zawartości i opis pliku tar za pomocą opcji tf
Ta opcja pomoże nam wyświetlić listę całego pliku archiwum. Możemy także wyświetlić konkretną zawartość w dowolnym pliku tar.
Polecenie jest następujące:
$ tar tf file.tar
11. Wyświetl archiwum za pomocą opcji -tvf
W systemie Linux możemy użyć opcji -tvf, aby wyświetlić archiwum.
Polecenie jest następujące:
$ tar -tvf file.tar
12. Przekaż nazwę pliku jako argument, aby znaleźć plik tar
Ta opcja umożliwia przeglądanie zarchiwizowanych plików wraz z ich informacjami.
bash z podziałem ciągów
Polecenie jest następujące:
$ tar tvf file.tar filename
13. Używanie potoku do rzucania „poleceniem grep” w celu wyszukania tego, czego szukamy
Ta opcja pomoże nam umieścić tylko wspomniany obraz lub tekst chwyt poprzez zarchiwizowane pliki.
Polecenie jest następujące:
$ tar tvf file.tar | grep 'filename.file'
Lub,
$ tar tvf file.tar | grep 'text to search'
Wprowadzenie do symboli wieloznacznych
Alternatywnie, symbole wieloznaczne są określane w systemie Linux jako znak wieloznaczny lub znak wieloznaczny. Jest to symbol używany do reprezentowania lub zastępowania wielu znaków.
kolekcje Java Java
Zazwyczaj symbole wieloznaczne są albo znakiem zapytania (?), który ilustruje pojedynczy znak, albo gwiazdką (*), która ilustruje wiele znaków.
Przykład-
14. Znajdź obraz w formacie .webp
Pomoże nam to w wyodrębnieniu tylko plików z rozszerzeniem .webp z archiwum file.tar. Opcja -wildcards informuje tar o interpretacji symboli wieloznacznych w nazwie pliku, który ma zostać wyodrębniony.
Nazwa pliku (*.webp) jest ujęta w pojedyncze cudzysłowy w celu ochrony symbolu wieloznacznego (*) przed nieprawidłowym rozwinięciem przez dowolną powłokę.
Polecenie jest następujące:
$ tar tvf file.tar --wildcards '*.webp'
Uwaga: W powyższym poleceniu symbol „*” jest stosowany w pozycji nazwy pliku w celu pobrania każdego pliku dostępnego w tym konkretnym katalogu.
15. Usuń pliki z archiwum tar
Możemy użyć opcji --delete do usunięcia plików i archiwum tar.
Polecenie jest następujące:
$ tar --delete -f archive.tar file_name
Przykład:
tar -delete -f file.tar hello1.txt
Wyjście:
hello1.txt plik został usunięty z archiwum file.tar: