我尝试过,openssl
因为它非常快:
openssl sha1 "$(basename "very_big_image.png")"
但这只是替换了实际文件进行校验和。
答案1
如果您指的是用作文件名的字符串的校验和,则需要将该字符串传递给您首选的校验和工具:
$ printf 'very_big_image.png' | openssl sha1
(stdin)= a2f2cfa4c7042222ecd8d980e7b26e46ee0895e5
$ printf 'very_big_image.png' | md5sum
52846a1d6726e254756f47cfaf9e116a -
$ printf 'very_big_image.png' | sha512sum
6133cf578b5c9aa515e3670712641e17cb55c3d9f1403a07718bdcb0dd02f3f5711bf87f54e2cbee3890d842ff0acd7ac5e62cdc0cd4f1e3a1d92486c5c3fbe8 -
如果您想要文件的内容,请传递文件名:
$ md5sum very_big_image.png
d3b07384d113edec49eaa6238ad5ff00 very_big_image.png
$ sha512sum very_big_image.png
0cf9180a764aba863a67b6d72f0918bc131c6772642cb2dce5a34f0a702f9470ddc2bf125c12198b1995c233c34b4afd346c54a2334c350a948a51b6e8b4e6b6 very_big_image.png
一些常用的哈希工具是:
md5sum
sha224sum
sha256sum
sha384sum
sha512sum