【发布时间】:2020-03-17 20:08:01
【问题描述】:
我有一个列出文件名的列表文件:
List1.txt
File1
File2
File3
File4
我想遍历列表 1 中的文件名,并为列表 1 中的每个文件生成另一个 md5 校验和列表文件。
预期输出:
md5_list.txt
File1 MD5Value
File2 MD5Value
File3 MD5Value
File4 MD5Value
这是我想出的:
cat list1.txt | find -type f ! -name "list1.txt" -exec md5sum {} + | sort -k 2 > md5_list.txt
想知道这是否是正确的方法?如果是,有没有更有效的方法来完成这项工作?
谢谢
【问题讨论】:
-
为什么要循环?只需通过他们md5。
xargs md5sum < List1.txt。构造md5sum $(cat list1.txt)将帮助您理解。您已经知道文件名,无需find他们。 -
与
sort,sort < List1.txt | xargs md5sum > md5_list.txt -
@DavidC.Rankin 这很简单,而且效果很好。
-
@KamilCuk 感谢您的建议。
-
很高兴它有帮助!