単純なtarアーカイブ内のすべてのファイルのsha1チェックサムをリストまたは新しいファイルとして取得したいと思います。
大容量のtarファイルを解凍するためにディスク容量を使用する必要はありません。パイプがあり、すぐにsha1を計算して出力を/ dev / nullに送信します。
私はたくさんのグーグルとパイプでいくつかの実験をしましたが、それほど遠くはありませんでした。
バックアップを確認するのに本当に時間がかかります。
ベストアンサー1
簡単すぎる:
tar xvJf myArchive.tar.xz --to-command=sha1sum
結果は次のとおりです。
z/
z/DOCUMENTATION
3c4d9df9bcbd1fb756b1aaba8dd6a2db788a8659 *-
z/getnameenv.sh
1b7f1ef4bbb229e4dc5d280c3c9835d9d061726a *-
または、次のコマンドを使用して「tarsha1.sh」を作成します。
#!/bin/bash
sha1=`sha1sum`
echo -n $sha1 | sed 's/ .*$//'
echo " $TAR_FILENAME"
次に、次のように使用します。
tar xJf myArchive.tar.xz --to-command=./tarsha1.sh
結果は次のとおりです。
3c4d9df9bcbd1fb756b1aaba8dd6a2db788a8659 z/DOCUMENTATION
1b7f1ef4bbb229e4dc5d280c3c9835d9d061726a z/getnameenv.sh