当前位置: 首页 > 知识库问答 >
问题:

在powershell中比较2个哈希[重复]

刘承运
2023-03-14

我是powershell的新手。我想知道为什么下面的代码总是返回“false”:

(get-filehash t2  | select-object hash) -eq (get-filehash t1  | select-object hash)

什么时候

  1. 一个文件是另一个文件的副本
  2. "get-filehash tn|selet-ject hash"为两个文件返回相同的值
  3. 两个文件都在同一个目录中

Tnx提前为您解答!

共有1个答案

蒋啸
2023-03-14

使用“选择对象属性”(Select Object Property)时,最终得到的对象只有一个属性。尽管一个对象可以具有相同的确切属性和值,但它们是不同的对象。请参见以下示例。

$a = [PSCustomObject]@{Property='A'}
$b = [PSCustomObject]@{Property='A'}

$a -eq $b

false

但是,对对象的引用是相等的

$a = [PSCustomObject]@{Property='A'}
$b = $a

$a -eq $b

true

相反,比较实际的属性值。

$a = [PSCustomObject]@{Property='A'}
$b = [PSCustomObject]@{Property='A'}

$a.Property -eq $b.Property

true

有了这些信息,以下任何一项都可以工作。

(get-filehash t2).hash -eq (get-filehash t1).hash

(get-filehash t2  | Select-Object -ExpandProperty hash) -eq (get-filehash t1  | Select-Object -ExpandProperty hash)

(get-filehash t2  | select-object hash).hash -eq (get-filehash t1  | select-object hash).hash

您还可以利用powershell的功能。

$t1,$t2 = Get-ChildItem 'fileone','filetwo' | Get-FileHash

$t1.hash -eq $t2.hash
 类似资料:
  • 问题内容: 我有两个像下面的哈希图: 键不相同,但值相同,有时值也不相同。 我想找出与比较时不存在的值 但这使我从employeeMap中得到null。 您能帮我解决这个问题吗? 问候托尼 问题答案: 以下是完美运行的代码,比较失败的原因是映射值不同。 如果我们看到日期,则可以清楚地看到差异。 不同于 因为我将其存储为字符串。 谢谢你们的支持以及也投下反对票的人们。 :)托尼

  • 我正在尝试使用Sinatra和BCrypt实现一种看似非常简单的身份验证方法,但显然我遗漏了一些东西... 用户会预先分配一个临时密码,该密码以明文形式存储在DB中。 我根据临时口令进行身份验证,然后创建salt和password_hash,并将它们作为字符串写入db(本例中为mongo)。 为了进行身份验证,我从db和用户口令中获取salt进行比较。 bcrypt::Engine.hash_se

  • 我使用mitsuhiko的pbkdf2实现进行密码哈希: 此函数返回二进制摘要,然后将其编码在bas64中并保存到数据库中。此外,当用户登录时,Base64字符串被设置为cookie。 此函数用于密码哈希比较: 我想知道在安全性方面,二进制哈希和Base64字符串的比较是否有任何不同?例如,当用户登录时,我会计算提交密码的二进制摘要,从数据库中解码Base64字符串,然后比较两个二进制哈希,但是如

  • 我在尝试遍历两个哈希数组时遇到问题。我的哈希值如下所示: 在我检查h1和h2中“name”字段的哈希值后,我需要将这两个哈希组合在一个名为的数组中,以便: 如果--- 数组应如下所示: 我已经尝试了很多,并且总是有更多的迭代和/或在不同名称的情况下无法打印任何内容。 我的代码看起来像: 我也无法正确比较h1和h2的值。 非常感谢您的帮助,因为我对Ruby还很陌生,不幸的是,我的逻辑无法帮助我。 提

  • 有人能告诉我如何从WooCommerce网络钩子中重新创建哈希以与请求中的“X-WC-Webhook-Signature”标头哈希进行比较吗? 留档指定哈希是从“有效负载”生成的,但我无法生成相同的哈希。 我的API是。NET Core 3.1 我尝试的第一件事: 第二个:

  • 问题内容: 我必须对指纹文件进行匹配才能匹配双峰。在2013年,对Java有何建议?我是否还应该比较文件大小,或者这是不必要的检查? 误报的可能性应该非常接近0 编辑:很多答案,谢谢。如今备份软件的标准是什么?SHA-256?更高?我猜md5不合适吗? 问题答案: 如果假阳性的概率必须 为零 ,而不是“比闪电击中的概率低”,则完全不能使用哈希算法;您必须逐字节比较文件。 值得一提的是,如果您可以使