
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.