![如何在 Linux 中使用 while 循环遍历数百个文件来对它们进行哈希处理,并将输出打印在 .txt 文件中?](https://linux22.com/image/1636266/%E5%A6%82%E4%BD%95%E5%9C%A8%20Linux%20%E4%B8%AD%E4%BD%BF%E7%94%A8%20while%20%E5%BE%AA%E7%8E%AF%E9%81%8D%E5%8E%86%E6%95%B0%E7%99%BE%E4%B8%AA%E6%96%87%E4%BB%B6%E6%9D%A5%E5%AF%B9%E5%AE%83%E4%BB%AC%E8%BF%9B%E8%A1%8C%E5%93%88%E5%B8%8C%E5%A4%84%E7%90%86%EF%BC%8C%E5%B9%B6%E5%B0%86%E8%BE%93%E5%87%BA%E6%89%93%E5%8D%B0%E5%9C%A8%20.txt%20%E6%96%87%E4%BB%B6%E4%B8%AD%EF%BC%9F.png)
我有一个包含许多文件的文件夹。我想在 ubuntu 终端窗口中使用 while 循环为每个文件生成 md5 哈希值。
我尝试使用这个循环。while read -r line; do (echo $line); done < output.txt
现在我不确定如何将 md5 命令导入此循环以获取哈希值。我做了一些研究,但没有找到任何东西。不过,我找到了一些适用于 DOS 的。
答案1
如果你想全部文件夹(或全局模式)中的文件只需运行
md5sum /path/to/folder/*
如果您确实需要从文本文件中读取文件名,请尝试
while read -r fn; do md5sum "$fn" ; done <filenames.txt >md5sums.txt