SHA1大型目录中文件的校验和,并输出到文本文件

时间:2017-06-28 23:28:45

标签: unix terminal openssl xargs

我需要通过文件将sha1校验和输出到输出文件中。几个文件是>超过8gb,如果这有所不同,整个目录包含~28K文件。

这就是我需要输出文件的样子:

SHA1(Windows printed document-1.pdf)= 1c1e2844be6e9ddd995941388b98c12a8b7a1e8d
SHA1(Windows printed document.pdf)= 4ea8a157c5d8d0fc9c38aa6312d120ab425900a0
SHA1(checklist.chk)= c5f9e078578925ef3de1e6075b0777d75296bb8f
...

这是到目前为止的代码:

openssl dgst -sha1 * > ~/Desktop/output.txt

此代码适用于小文件或小目录,但当我尝试将其投入生产时,它会抛出一个异常,即参数列表太大。

1 个答案:

答案 0 :(得分:0)

尝试hashdeep -c sha1 -r $DIRfind $DIR -print0 -type f | xargs -0 -I {} sha1sum {} > output.txt