【发布时间】:2017-12-02 12:03:56
【问题描述】:
我需要通过文件将 sha1 校验和输出到输出文件中。如果这有所不同,并且整个目录包含约 28K 文件,则其中一些文件大于 8gb。
这是我需要的输出文件的样子:
SHA1(Windows printed document-1.pdf)= 1c1e2844be6e9ddd995941388b98c12a8b7a1e8d
SHA1(Windows printed document.pdf)= 4ea8a157c5d8d0fc9c38aa6312d120ab425900a0
SHA1(checklist.chk)= c5f9e078578925ef3de1e6075b0777d75296bb8f
...
这是目前为止的代码:
openssl dgst -sha1 * > ~/Desktop/output.txt
此代码适用于小文件或小型目录,但当我尝试将其投入生产时,它会引发参数列表太大的异常。
【问题讨论】:
-
可能类似于Bash command line and input limit。您可能应该添加一个脚本并展开一些事情。使用找到的
find和for each文件。也许像How to loop through file names returned by find? -
谢谢!听起来是个不错的起点。我会试一试并回答我想的问题。
标签: unix terminal openssl xargs