如果我想递归地创建一个 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
如何解决这个问题呢?
答案1
你可以直接通过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