У меня возникла проблема с использованием Barcat для отображения диалогового окна во время сжатия? Хотите узнать, какой точный синтаксис?
вот ссылка наБаркат
вещи, которые я пробовал, это
bar -n apache24.tar.xz |tar -Jcf -
bar -n apache24.tar.xz |tar -Jcf - apache24/
bar -n apache24.tar.xz |tar -Jcf apache24/ -
bar -c 'tar -Jcf apache24/ apache.tar.xz'
bar -c 'tar -Jcf apache.tar.xz apache24/'
bar -n apache24.tar.xz apache24/ |tar -Jcf -
bar -n apache24/ apache24.tar.xz |tar -Jcf -
bar -n apache24/ |tar -Jcf -
bar -n apache24/ |tar -Jcf -- apache.tar.xz
bar -n apache.tar.xz |tar -Jcf apache24/ --
bar -n apache.tar.xz -- apache24/ |tar -Jcf -
bar -n apache.tar.xz apache24/ |tar -Jcf -
bar -n apache.tar.xz apache24/ |tar -Jcf --
bar -n apache24/ apache.tar.xz |tar -Jcf -
Извините за дубликаты, которые я только что вставил из истории
решение1
Он не может этого сделать, по крайней мере, не так удобно, как вам, вероятно, хотелось бы. Чтобы понять, почему, вам нужно рассмотреть, как будет работать такая программа. В случае распаковки он может легко получить stat исходного .tar.xz
файла, чтобы узнать его размер, а прогресс может быть вычислен как количество байтов, прошедших через bar
, деленное на размер файла. Но в случае сжатия bar
он недостаточно умен, чтобы вычислить исходный размер каталога, и не знает окончательный размер входных данных, которые ему передаются (например, если выход из tar
передается в bar
).
bar
Кажется, принимает -s
опцию, чтобы вы могли помочь ему с ожидаемым размером, но я не смог заставить его на самом деле выдавать правильный вывод. Это выглядит примерно так, если вы хотите поиграть с этим больше:
tar cf - apache24/ | bar -s $(du -sb apache24 | cut -f1) | xz > apache24.tar.xz
На практике вам, вероятно, придется добавить фактор подгонки к du
выходу, чтобы учесть накладные расходы в tar
формате. Очевидно, что это не очень удобно.