我有很多的FTP文件夹,我每个月都会添加几个文件夹,并且宁愿留下某种validation文件完整性的方法,例如我可以使用脚本创build的文件MD5SUMS,SHA256SUMS …。 举个例子:
find ./ -type f -exec md5sum $1 {} \;
这工作正常,但是当我每次为每个shaxxx总和运行它时,它会创build一个真正不需要的MD5SUMs文件的总和。
是否有一个简单的方法,或脚本,或散列所有的文件到他们的总和文件的常见方式,而不会导致这样的问题? 我真的可以使用更好的select。
你是说问题是你正在生成的文件上重新运行md5sum? 你可以跳过这些文件。 当然,使用gnu并行来加快速度:
find . -type f -a \! -name MD5SUMS | parallel -j+0 "md5sum {} >>MD5SUMS"
不过,从你的描述中我觉得我错过了一些东西。
编辑:更正redirect和添加xargs信息:
请注意,您不必使用并行,xargs也可以正常工作(我认为尝试并行是很有趣的)。 这是等价的xargs调用:
find . -type f -a \! -name MD5SUMS -print0 | xargs -0 sum >> MD5SUMS
我曾经需要validation包含大量文件的备份/镜像的完整性,最后写了一个名为MassHash的命令行程序。 它是用Python编写的。 一个GTK +启动器也可用。 你可能想看看…
试试md5deep
sudo apt-get install md5deep md5deep -rel "test_directory" > results_file.md5
“这是我将对目录运行的命令,以检查是否有任何更改。”
md5deep -X list.txt -r Pictures/
从http://linhost.info/2010/05/compare-hashes-with-md5deep-part-2/ :