在 Win10 中,寻找方法在命令提示符或批处理文件中通过管道将 DIR 命令的输出作为 CERTUTIL 命令的输入。IOW,我想获取与 DIR 命令匹配的所有文件的 MD5 哈希。
以下命令确实会生成E:\Temp文件夹中所有文件的裸列表:
C:\Users\RAS>dir "E:\Temp" /b
但是,当我按照以下命令进行管道传输时,会收到一条错误消息:
C:\Users\RAS>dir "E:\Temp" /b | CertUtil -hashfile %~f1 MD5
CertUtil: -hashfile command FAILED: 0x80070002 (WIN32: 2 ERROR_FILE_NOT_FOUND)
CertUtil: The system cannot find the file specified.
user1686 在Windows Vista 管道输出到 attrib 命令中的回答表明某些命令(如 ATTRIB)不将文件名作为输入,但我认为这与这里无关。
Cliff Armstrong 在获取字符串哈希并最终将其与哈希进行比较的答案看起来很有希望,但我不知道如何将每个完全限定的文件名传递给 CERTUTIL。另外,我没有使用 PowerShell 的经验,如果可能的话,我希望使用批处理文件获得解决方案。
谢谢,
德国之声