¿Existe un comando para determinar la relación de compresión de un archivo tar.bz2?

¿Existe un comando para determinar la relación de compresión de un archivo tar.bz2?

Tengo un archivo.tar.bz2 de aproximadamente 50 GB y me gustaría extraerlo, pero no sé cuánto espacio necesitaré. ¿Existe un comando para imprimir la relación de compresión del archivo tar.bz2?

Respuesta1

No conozco un comando específico para imprimir relaciones de compresión, pero

bzip2 -dc file.tar.bz2 | wc -c

debería mostrarle el número de bytes que ocupa el archivo tar sin comprimir. Parte de ese espacio lo ocupan los metadatos tar, pero debería darle una estimación aproximada.

Respuesta2

tar -tvjf file.tar.bz2

Enumerará todos los archivos en el archivo tar, sus respectivos tamaños y otra información. Siempre puedes canalizar la salida a través de un script awk para sumar los números...

tar -tvjf file.tar.bz2 | awk '{i+=$3;print i"     "$0}' | tail

Respuesta3

Dado que aquí es donde me llevó la búsqueda para hacer lo mismo con los archivos .tar.gz, así que lo agregaré

tar -tvf file.tar.gz | awk '{i+=$3} END{print i}'

funcionará para esos. es decir, simplemente omita la j que especifica el formato bz2. Habría publicado esto como comentario en la publicación de @TooLazyToLogIn pero no tengo el representante para eso.

información relacionada