ドライブの再帰内の各フォルダに対してmd5チェックサムファイルを生成するスクリプトを探していますか?
私のコンピュータにmd5deepのコピーがありますが、bashスクリプトを書くのはうまくいきません。
答え1
特定のディレクトリにあるすべてのファイルの.md5ファイルをインポートするには、次のスクリプトを使用できます。
#!/bin/bash
if [ $# -ne 1 ] ; then
echo "Usage $0 [directory]"
exit 1
fi
find $1 -type f -print0 | while IFS= read -r -d $'\0' file; do
(
cd "$(dirname "$file")"
filename="$(basename "$file")"
md5sum "$filename" > "$filename".md5
)
done
では、zsh
1行のコマンドを使用して、現在のディレクトリ内のすべてのファイル(ドットで始まるファイルを含む)に対して同じ操作を実行できます。
for i in **/*(/D) ; do ( cd $i ; for j in *(.D) ; do md5sum $j > $j.md5 ; done ) ; done
答え2
もちろん、ネクロマンシーですが、私たちが1ラインをどれだけ愛しているか知っています
#find / -type f -exec md5sum {} + > CheckSums
個人的にはsha512sumを使用して/homeなどに制限しますが、ルートを確認するにはこれを選択してください。