我正在尝试对目录及其子目录中找到的所有.jar文件进行校验和。然后将带有校验和值的文件名打印到文件中。
这是我的代码:
md5sum | find -name *.jar >result.txt
我正在尝试将两个单独可行的命令结合在一起。
任何帮助都将不胜感激。
你可以使用类似这样的方法,在每个文件上执行一个命令:
find . -name "*.jar" -exec md5sum {} \; >result
-printf "%f\n"
,它将仅打印文件名,但我认为它不会起作用,因为 md5sum
需要完整路径,你可以在执行命令后使用 sed
或 awk
删除路径。 - iabdalkader这也适用于递归哈希当前目录或子目录中的所有文件(感谢我的系统管理员!):
md5sum $(find . -name '*.jar') > result.txt
-exec
建议会在文件名前(同样不包括路径)添加"*"。您还可以将结果导向 xargs
:
find . -name "*.jar" | xargs md5sum > result.txt