powershell - 比较哈希和输出差异
问题描述
所以我使用compare-object
cmdlet 来比较我在测试之前创建的 2 个哈希值,一个在测试之后创建的哈希值。目标是比较 2 个文件的哈希差异,并在屏幕上生成相等或不相等的结果并保存到文件中。
Compare-Object -ReferenceObject $(Get-Content -Path $title2hashstorage/$sha256) -DifferenceObject $(Get-Content -Path $source) > hashcompare.txt
除了我在创建 2 个哈希的日期上看到的差异之外,这很好用。
InputObject SideIndicator
----------- -------------
Hash Generated at 10/01/2019 11:07:25 =>
Hash Generated at 10/01/2019 13:21:03 <=
那么有没有办法只测试哈希而不是日期并返回相等或不相等的结果?
解决方案
那么有没有办法只测试哈希而不是日期并返回相等或不相等的结果?
是的,Powershell 添加了一些漂亮的 cmdlet 来帮助恢复这几个版本。以下是你所追求的?
$first = $(Get-FileHash -Path '.\app.js').Hash
$second = $(Get-FileHash -Path '.\hive.js').Hash
if ($first -eq $second) { Write-Output "Match" } else { Write-Output "Different" }
根据请求者的评论更新答案
除非更改选择的文件或哈希算法,否则每次计算的哈希值都相同:
Compare-Object
是一种比较两个对象的机制,这两个对象由多个属性组成。您通常不会Compare-Object
在这种情况下使用,因为您可以只比较两个哈希字符串。你能修改我给你使用的示例吗Compare-Object
,当然,但这有点矫枉过正。
推荐阅读
- javascript - 将 JSON 对象存储在 cookie 中是一种好习惯吗?
- javascript - 如何在 Angular 4 中设置表单值?
- javascript - 在 jquery 中的按钮单击中启用特定验证器
- bash - Bash 脚本打印输出两次
- c# - 如何使用来自给定键的 Linq Lambda 解析 XML 文件
- java - CollapsingToolBar 不起作用后添加 ScrollView
- javascript - 在 jQuery 中,如何替换文档的正文并仍然让 JavaScript 触发?
- spring - 在我导入 Hybris 项目后,Eclipse 无法正常运行(f3、ctrl+space、通过 ctrl 打开实现、编译错误)。
- jsf - Primefaces 树节点可拖动到子节点
- c++ - C++ Lambda,捕获子句如何深入