【发布时间】:2021-02-08 03:14:06
【问题描述】:
假设我需要根据网站提供的哈希验证文件的 md5 哈希。
我在 powershell 中使用certutil -hashfile .\amazon-corretto-11.0.10.9.1-windows-x64.msi md5 或Get-FileHash -Path .\amazon-corretto-11.0.10.9.1-windows-x64.msi -Algorithm md5 来获取哈希,然后我从下载网站查看哈希,并逐个字母进行比较。有没有办法让命令行做比较?
我试过certutil -hashfile .\amazon-corretto-11.0.10.9.1-windows-x64.msi md5 | echo == "website_hash",但没用。
欢迎使用命令行和 powershell 中的解决方案。
【问题讨论】:
-
比较哈希值是很常见的事情,网络上有很多样本。您正在混合命令行 (cmd.exe) 并尝试使用 PowerShell PipeLine。您正在做的事情不起作用,因为如果您在 PowerShell 实例中执行此操作,则该命令是错误的。管道`'|'` 符号在
cmd.exe和powershell.exe中表示不同的含义。当您从 PowerShell 调用可执行文件时,可执行文件处于控制之中。使用Get-help -Name Get-FileHash -Full和Compare-Object的 Powershell 帮助文件; PowerShell 中的用例。 -
请不要编辑您的问题以包含答案。您可以将问题的答案作为单独的帖子发布。
标签: powershell hash compare command-line-tool