Md5sumリストを再帰的に作成したい場合は、md5deep
を使用しますが、md5sumファイルがアルファベット順に生成されないなどの問題が発生し始めます。例えば、
$ cd /media/sdcard/DCIM
$ md5deep -rl *
d41d8cd98f00b204e9800998ecf8427e 2014-12-01/IMG_1969.png
c3a9d8cb047192a03b857023948a7ba6 2014-12-01/IMG_1971.png
bd12c358db0c97230b9d48f67b2c0c98 2014-12-01/IMG_1970.png
この問題を解決する方法は?
sort
を通過するだけです:
$ md5deep -rl * | sort -k2
d41d8cd98f00b204e9800998ecf8427e 2014-12-01/IMG_1969.png
bd12c358db0c97230b9d48f67b2c0c98 2014-12-01/IMG_1970.png
c3a9d8cb047192a03b857023948a7ba6 2014-12-01/IMG_1971.png
ファイル名に改行やその他の奇妙なものが含まれている可能性がある場合は、代わりにこれを使用してください(GNU sort
と仮定):
$ md5deep -0rl * | sort -zk2 | tr '\0' '\n'
d41d8cd98f00b204e9800998ecf8427e 2014-12-01/IMG_1969.png
bd12c358db0c97230b9d48f67b2c0c98 2014-12-01/IMG_1970.png
c3a9d8cb047192a03b857023948a7ba6 2014-12-01/IMG_1971.png