BarCat で圧縮しますか?

BarCat で圧縮しますか?

圧縮中にダイアログを表示するために 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

少なくとも、あなたが望むほど便利には、それはできません。その理由を理解するには、そのようなプログラムがどのように動作するかを考える必要があります。解凍の場合、元の.tar.xzファイルを簡単に stat してサイズを取得でき、進行状況は を通過したバイト数をbarファイル サイズで割って計算できます。しかし、圧縮の場合、 はbarディレクトリの元のサイズを計算できるほど賢くなく、パイプされる入力の最終的なサイズも知りません (たとえば、 の出力tarが にストリームされる場合bar)。

bar予想されるサイズに合わせてオプションを受け入れるようです-sが、実際に正しい出力を生成することはできませんでした。さらに試してみたい場合は、次のようになります。

tar cf - apache24/ | bar -s $(du -sb apache24 | cut -f1) | xz > apache24.tar.xz

du実際には、フォーマットのオーバーヘッドを考慮して、出力に調整係数を追加する必要があるでしょうtar。明らかに、これを行うのはあまり便利ではありません。

関連情報