Powershell 无法将文件中的 MD5 值与生成的 MD5 值进行比较



我使用Powershell的Get-FileHash函数从项目中的目录中生成了MD5校验和值的列表,然后将这些值导出到.csv文件中。

$path = "C:UsersKrishnaaDocumentsVisual Studio 2012ProjectsNamePrintNamePrintobjDebug"
$hash = Get-FileHash -Path $path* -Algorithm MD5
$export = $hash | Export-csv $pathhashfile.csv

如果我调用 $hash : https://i.stack.imgur.com/Owi0Q.png,这就是输出的样子

然后,我将.csv文件导入回Powershell控制台。

$import = Import-csv $pathhashfile.csv | Format-Table

当我调用$import时,它会输出以下内容: https://i.stack.imgur.com/cqvsO.png

当我创建自己的简单函数来比较两个内容时,我遇到了问题,即它说内容不匹配。我确实了解.csv中的每一行都被Powershell视为一个对象。如何在Powershell中比较对象到对象?

上面的代码的一个问题是你对Import-CSV的使用。 您不是将 Import-CSV 返回的对象分配给$import,而是将 Format-Table 返回的格式化对象数组分配给 。 如果删除Format-Table,您应该能够将$import.hash$hash.hash进行比较(尽管您可能需要逐行循环和比较)。

相关内容

  • 没有找到相关文章

最新更新