¿Cómo comprimo varios archivos en un archivo .xz?

¿Cómo comprimo varios archivos en un archivo .xz?

Quiero comprimir varias imágenes en un archivo .xz. ¿Cómo puedo hacer eso?

Respuesta1

Usar tarcon -Jopción:

tar -cvJf images.tar.xz /directory/containing/images/*

tarse usa para combinar varios archivos en uno (Archivo) y luego necesitamos comprimir el archivo usando el algoritmo de compresión XZ.

Deman tar:

-c, --create
       create a new archive
-v, --verbose
       verbosely list files processed
-J, --xz

-f, --file ARCHIVE
       use archive file or device ARCHIVE

También tenga en cuenta que images.tar.xzse creará en el directorio actual; si desea guardarlo en otro lugar, utilice /full/path/to/images.tar.xz.

Respuesta2

aunque comotar cJf archive files...detallado por Zacharee1ypor heemaylnormalmente es lo que querrás hacer, otra forma es canalizar datos tareados alxzdominio:

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

Desde Ubuntutaradmite la Jopción, esta forma alternativa es específicamente útil cuando desea pasar opciones a xz.

En este ejemplo, tar y xzip algunos archivos TIFF con un alto nivel de compresión ( -9to xz) y salida detallada ( vto tar, -vto xz):

ek@Io:~/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

Por supuesto, esto también podría hacerse en dos pasos explícitamente separados:

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

Esas dos formas en realidad no son equivalentes en cómo funcionan, aunque los .tar.xzarchivos que producen al final deberían ser los mismos (y lo eran cuando lo probé).

  • En el primero, elproducciónde tarescanalizado( |) haciaaportede xz. xzrecibe datos tarcasi de inmediato y nunca se crea ningún archivo tar intermedio sin comprimir. Es decir que la primera forma es esencialmente equivalenteatar cJf archive files..., excepto por los argumentos adicionales pasados ​​a xz.
  • En el segundo, el primer comando crea un archivo tar sin comprimir y luego lo comprime con xzel segundo comando. ( xzborra automáticamente el archivo original cuando finaliza, a menos que se invoque con -k/ --keep).

Para más lecturas, consulteesta publicación de Rafael van Horny las páginas de manual tary xz.

Respuesta3

Utilice este comando: tar cJf <archive.tar.xz> <files>. Separe las rutas de los archivos con un espacio.

información relacionada