Estou tendo problemas ao usar o Barcat para mostrar uma caixa de diálogo durante a compactação? Quer saber qual é a sintaxe exata?
aqui está um link paraBarcat
coisas que eu tentei são
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 -
Desculpe qualquer idiota que acabei de colar da história
Responder1
Não é possível fazer isso, pelo menos não tão convenientemente quanto você provavelmente gostaria. Para entender por quê, é preciso considerar como esse programa funcionaria. No caso de descompactação, ele pode facilmente determinar o .tar.xz
arquivo original para obter seu tamanho, e o progresso pode ser calculado como o número de bytes que passaram bar
, dividido pelo tamanho do arquivo. Mas no caso de compactação, bar
não é inteligente o suficiente para descobrir o tamanho original do diretório, nem sabe o tamanho final de uma entrada canalizada para ele (por exemplo, se a saída de tar
for transmitida para bar
).
bar
parece aceitar uma -s
opção para que você possa ajudá-lo com o tamanho esperado, mas não consegui produzir uma saída correta. É mais ou menos assim, se você quiser brincar mais com isso:
tar cf - apache24/ | bar -s $(du -sb apache24 | cut -f1) | xz > apache24.tar.xz
Na prática, você provavelmente teria que adicionar um fator de correção à du
saída para compensar as despesas gerais do tar
formato. Obviamente, não é muito conveniente fazer isso.