Tar 操作が期待どおりに機能しません。

Tar 操作が期待どおりに機能しません。

確認したい圧縮されていない大容量tarファイル(1TB)があり、すべてがうまくいったことを確認するために解凍してみました。時間がかかるので、インポート中に画面にいくつかの情報を印刷したいと思います。推奨されるチェックポイントアクションが悪すぎます。ここ期待どおりに動作しません。このコマンドを試した場合:

tar -xf big_fat_backup.tar --checkpoint=10000 --checkpoint-action=ttyout='%{%Y-%m-%d %H:%M:%S}t (%d sec): #%u, %T%*\r'

文字列のメタ文字は拡張されず(%uを除く)、次の出力が表示されます。

%{%Y-%m-%d %H:%M:%S}t (%d sec): #10000, %T%*

先ほどマニュアルからコピーしましたが、私が何を間違っているのでしょうか?

ボーナス質問:-Wスイッチを使用してアーカイブを作成してもエラーが印刷されない場合は、アーカイブが正しく記録されていることを確認する必要がありますか?

ベストアンサー1

これらのメタ文字は次--checkpoint-actionのとおりです。バージョン1.28で導入されました、一週間前に発売されました。

tar必要に応じておおよその進行状況を取得する1つの方法は、プロセスが入力ファイルのどこにあるかを確認することです。lsof -p12341234がプロセスのPIDである場所を見ることができますtar。 Linuxではpos:確認できます/proc/1234/fdinfo/3

画面に進行状況レポートを表示するには、以下に基づいてアーカイブをフィルタリングできます。pv

<big_fat_backup.tar pv -bt | tar -xf -

アーカイブが正しく作成されたことを確認するには、tarコマンドの終了状況を確認してください。これは他のコマンドにも当てはまります。終了状態 0 は成功を示し、ゼロ以外の値は失敗を示します。

おすすめ記事