Eu tenho um arquivo.tar.bz2 com cerca de 50 GB e gostaria de extraí-lo, mas não sei de quanto espaço vou precisar. Existe um comando para imprimir a taxa de compactação do arquivo tar.bz2?
Responder1
Não conheço um comando específico para imprimir taxas de compressão, mas
bzip2 -dc file.tar.bz2 | wc -c
deve mostrar o número de bytes ocupados pelo arquivo tar descompactado. Parte desse espaço é ocupado pelos metadados tar, mas deve fornecer uma estimativa aproximada.
Responder2
tar -tvjf file.tar.bz2
Listará todos os arquivos no arquivo tar, seus respectivos tamanhos e outras informações. Você sempre pode canalizar a saída através de um script awk para somar os números ...
tar -tvjf file.tar.bz2 | awk '{i+=$3;print i" "$0}' | tail
Responder3
Visto que foi aqui que a pesquisa me levou a fazer a mesma coisa com os arquivos .tar.gz, então acrescentarei isso
tar -tvf file.tar.gz | awk '{i+=$3} END{print i}'
funcionará para eles. ou seja, deixe de fora o j que especifica o formato bz2. Eu teria postado isso como um comentário na postagem de @TooLazyToLogIn, mas não tenho representante para isso.