Aby zilustrować tę kwestię: pobrałem bibliotekę LEDA ze strony internetowej firmy . Użycie tar -xzf na nim nie powiedzie się:
$ tar -xzf LEDA-6.3-free-fedora-core-8-64-g++-4.1.2-mt.tar.gz
tar: This does not look like a tar archive
tar: Skipping to next header
tar: Exiting with failure status due to previous errors
Jednak gunzip, po którym następuje tar -xf, działa dobrze:
$ gunzip LEDA-6.3-free-fedora-core-8-64-g++-4.1.2-mt.tar.gz
$ tar -xf LEDA-6.3-free-fedora-core-8-64-g++-4.1.2-mt.tar
# no error
Czy ktoś może mi powiedzieć, dlaczego tak jest? - Chciałbym, aby standardowe tar
polecenie działało cały czas.
gunzip < archive.tar.gz | tar -x
powinien działać wszędzie.
tar
nie obsługuje gunzip dekompresji, można wykonać następujące zamiast: gunzip -c $file | tar -x
. Często jest to zawijane w funkcję powłoki.
tar xzf
pobrałem to archiwum i rzeczywiście wyświetla błąd na Debian GNU / Linux (który oczywiście używa gnutara). Dziwny.
tar
, który nie implementuje -z