3

У меня есть файл .tar.bz2 объемом около 50 ГБ, и я хотел бы извлечь его, однако я не знаю, сколько места мне понадобится. Есть ли команда для печати степени сжатия файла tar.bz2?

3 ответа3

5
tar -tvjf file.tar.bz2

Перечислит все файлы в файле tar, их соответствующие размеры и другую информацию. Вы всегда можете передать вывод через скрипт awk, чтобы сложить числа ...

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

Я не знаю команды специально для распечатки коэффициентов сжатия, но

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

должен показать вам количество байтов, занятых несжатым файлом tar. Часть этого пространства занята метаданными tar, но она должна дать вам приблизительную оценку.

1

Поскольку поиск привел меня к тому же самому с файлами .tar.gz, я добавлю, что

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

будет работать для тех. то есть просто опустите j, который определяет формат bz2. Я бы опубликовал это как комментарий @ TooLazyToLogIn, но у меня нет представителя для этого.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .