Rozpakuj plik skompresowany w .txz i .tar za pomocą jednego polecenia
13
Mam plik skompresowany w * .txz. Po rozpakowaniu otrzymałem plik * .tar. Czy jest jakiś sposób, aby rozpakować go dwukrotnie za pomocą jednego polecenia? Mam na myśli rozpakowanie pliku (* .tar) .txz za pomocą jednego polecenia?
Tak samo jest z każdym skompresowanym archiwum. Nigdy nie powinieneś tworzyć nieskompresowanej kopii oryginalnego pliku.
Niektóre tarimplementacje, takie jak najnowsze wersje GNU, tarmają wbudowane opcje do xzsamodzielnego wywoływania .
Z GNU tarlub bsdtar:
tar Jxvf file.tar.xz
Chociaż, jeśli masz wersję, która ma -J, istnieje szansa, że automatycznie wykryje xzpliki, więc:
tar xvf file.tar.xz
wystarczy.
Jeśli Twój GNU lub BSD tarjest za stary, aby go w xzszczególności obsługiwać , możesz skorzystać z --use-compress-programopcji:
tar --use-compress-program=xz -xvf file.tar.gz
Jedną z zalet tarwywołania narzędzia kompresora jest to, że może zgłosić awarię w stanie wyjścia.
Uwaga: jeśli tar.xzarchiwum zostało utworzone za pomocą pixz, pixzmogło tardo niego dodać indeks, który umożliwia indywidualne rozpakowywanie plików bez konieczności rozpakowywania całego archiwum:
pixz -x path/to/file/in/archive < file.tar.xz | tar xvf -
To powinna być droga
tar Jxvf file.txz
źródło
tar
możesz użyć-J
lub--xz
.Rozpakowanie prawdopodobnie nie jest właściwą terminologią. Można rozpakować z
xz
i rozpakować ztar
.Strona podręcznika dla GNU
tar
(man tar
GNU tar jest domyślnym w Debianie) określa, że możesz użyć:i
xz
obsługuje tę-d
opcję, dzięki czemu można użyć:Co jest znacznie mniej oczywiste ze strony człowieka jest to, że
-xz
i-J
są skróty dla--use-compress-program xz
lub-I xz
.A na stronie podręcznika nie jest wcale określone to, co możesz zrobić
w GNU tar i rozpozna plik tar jako skompresowany
xz
.źródło