Crea archivio tar con la compressione xz?

3

Mi piacerebbe creare un tarball usando lo strumento di compressione xz. Secondo google, a partire da 10.10 c'è un interruttore "--xz" non documentato per tar ma non riesco a farlo funzionare. Su Linux c'è un interruttore "-J" che consente la compressione xz ma che non è supportato direttamente su OS X.

La pagina man per tar cita la compressione xz ma non mostra un esempio funzionante su come usarlo. Le mie altre ricerche risultano tutte in qualcosa di simile a:

    tar cf - some_dir | xz -1 > some_dir.txz

Tuttavia, la decompressione dalla riga di comando è meno intuitiva e richiede xz per gestire la decompressione prima di consegnare il file a tar.

Quindi, qual è lo "stato dell'arte" nell'uso della compressione xz direttamente da tar?

    
posta Chuck Remes 06.02.2017 - 03:13
fonte

1 risposta

5

Esamina il codice sorgente per il pacchetto libarchive da Apple Open Source per OS X 10.8.5, 10.9, 10.10 e macOS 10.12.3, di cui contiene il codice sorgente per bsdtar , include la possibilità di usare xz compressione direttamente in tar , tuttavia non è stata implementata in fase di compilazione fino a OS X 10.9.0 e versioni successive. Sebbene la pagina di manuale bsdtar.1 non mostri le opzioni -J, --xz anche se si trova nel codice sorgente bsdtar.c .

Per creare un archivio xz compresso tar in OS X 10.9 o versioni successive, utilizza i seguenti esempi di sintassi:

tar -cJf filename.tar.xz /path/to/folder_or_file ...

o

tar --xz -cf filename.tar.xz /path/to/folder_or_file ...

Esempio:

tar -cJf Documents.tar.xz "$HOME/Documents"

o

tar --xz -cf Documents.tar.xz "$HOME/Documents"

Ho anche controllato il file Documents.tar.xz dopo che è stato creato in un editor esadecimale e aveva l'intestazione corretta che includeva la porzione 7zXZ attesa della firma.

    
risposta data 06.02.2017 - 05:36
fonte

Leggi altre domande sui tag