web-dev-qa-db-ja.com

進行はあるが圧縮されていないタール

進行状況の更新を含むtar.gzファイルを作成する方法については多くの回答があります(つまり、 この回答 、以下にコピー)

tar cf - /folder-with-big-files -P | pv -s $(du -sb /folder-with-big-files | awk '{print $1}') | gzip > big-files.tar.gz

しかし、そのように圧縮せずにファイルをタール化​​する場合、どのように進行状況を確認できますか

tar -cvf output.tar folder/to/tar
2
puk

受け入れられた解決策は機能しますが、それはプロセスの乱用のほんの少しです。よりシンプルでよりエレガントで正しい解決策があります-

tar -c /folder | pv -s $(du -sb /folder-with-big-files | awk '{print $1}') > bigfiles.tar

tarはTapeARchiveの略で、ストリームを処理するように設計されています。 「cf」の「f」は、tarにファイルを具体的に作成するように指示します。これを実行して「-」を指定すると、stdoutがこのファイルとして使用されます。

4
davidgo

Gzipで出力する代わりに、ファイルに出力します:tar cf - /folder-with-big-files -P | pv -s $(du -sb /folder-with-big-files | awk '{print $1}') > big-files.tar

2
Kevin Rockwell