我试图从我的本地证书商店检索证书。我开始做这样的事情:
PS Cert:\CurrentUser\My> $cert = Get-ChildItem -Path Cert:\CurrentUser\My
PS Cert:\CurrentUser\My> $cert | Where-Object {$_.Thumbprint -Match "84437"}
Directory: Microsoft.PowerShell.Security\Certificate::CurrentUser\My
Thumbprint Subject
---------- -------
8443700000000000000000000000000000000000 CN=some certificate
好。这有效。所以我把它改成了:
Get-ChildItem -Path Cert:\CurrentUser\My | Where-Object {$_.Thumbprint -Match "84437"}
然而这次我根本没有输出。这是什么原因?
答案 0 :(得分:5)
“84437”中的第一个双引号:
Get-ChildItem -Path Cert:\CurrentUser\My | Where-Object {$_.Thumbprint -Match "84437"}
似乎包含2个字符,尝试删除它,你会发现实际上需要两次。
如果我们使用以下方法检查该字符:
"`"".ToCharArray()|%{[int][char]$_}
输出非常奇怪:
34
8206
34是双引号,8206是奇怪的东西。
所以只需删除双引号并再次输入,它应该可以工作。