GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come comprimere più file in un archivio .xz?

Voglio comprimere diverse immagini in un archivio .xz. Come faccio?

Risposta accettata:

Sebbene tar cJf archive files... come descritto in dettaglio da Zacharee1 e da heemayl è di solito quello che vorrai fare, un altro modo è inviare i dati tarred a xz comando:

tar c files... | xz > archive.tar.xz

Dal tar di Ubuntu supporta il J opzione, questo modo alternativo è particolarmente utile quando desideri passare opzioni a xz .

In questo esempio, tar e xzip alcuni file TIFF con un alto livello di compressione (-9 a xz ) e un output dettagliato (v a tar , -v a xz ):

[email protected]:~/Pictures$ tar vc *.tif{,f} | xz -9v > pics.tar.xz
page001.tif
page002.tif
page003.tif
page004.tif
page9087.tif
page3la.tiff
quux0000.tiff
  100 %       207.3 KiB / 290.0 KiB = 0.715

Questo potrebbe, ovviamente, essere fatto anche in due passaggi esplicitamente separati:

[email protected]:~/Pictures$ tar vcf pics.tar *.tif{,f}
page001.tif
page002.tif
page003.tif
page004.tif
page9087.tif
page3la.tiff
quux0000.tiff
[email protected]:~/Pictures$ xz -9v pics.tar
pics.tar (1/1)
  100 %       207.3 KiB / 290.0 KiB = 0.715

Questi due modi non sono effettivamente equivalenti nel modo in cui operano, sebbene .tar.xz i file che producono alla fine dovrebbero essere gli stessi (e lo erano, quando l'ho testato).

  • Nel primo, l'output di tar viene inviato tramite pipe (| ) all'input di xz . xz riceve i dati da tar quasi immediatamente e non viene mai creato alcun file tar intermedio non compresso. Questo per dire che il primo modo è essenzialmente equivalente a tar cJf archive files... , ad eccezione degli argomenti aggiuntivi passati a xz .
  • Nel secondo, un archivio tar non compresso viene creato dal primo comando, quindi compresso da xz nel secondo comando. (xz elimina automaticamente il file originale al termine, a meno che non venga richiamato con -k /--keep .)

Per ulteriori letture, vedere questo post di Rafael van Horn e il tar e xz pagine man.


Ubuntu
  1. Come estrarre i file dall'archivio dei pacchetti Debian DEB

  2. Come eseguire il tar (comprimere) i file, escludendo determinati file o directory

  3. Vim:come aprire più file in schede diverse?

  4. Come dividere un file di testo in più file *.txt?

  5. Come creare un archivio tar suddiviso in più file?

Come dividere l'archivio "tar" di grandi dimensioni in più file di determinate dimensioni

Come comprimere ed estrarre file usando il comando Tar, Zip su Linux

Comando tar di Linux – Come comprimere file in Linux

Come comprimere file/cartelle in formato .zip, tar.xz e 7z in Ubuntu Desktop

Come unire più file PDF in un unico PDF in Linux

Concatena più file tar in un unico comando