windows - 在 Windows PowerShell 中获取应用程序和签名者的列表
问题描述
我正在尝试获取程序列表、它们在文件系统中的路径以及它们的签名。我当前的脚本返回程序及其路径,但签名者字段在所有情况下都是空的。我需要解决什么问题?
脚本:
Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\App
Paths\*" |
Where-Object {$_."(default)" -ne $null} |
Select-Object @{ expression={$_.PSChildName}; label='Program'} ,
@{expression={$q + $_."(default)" +$q}; label='Path'},
@{expression={Get-AuthenticodeSignature $_.("default") }; label='Signer'}
解决方案
对于签名者,您的括号在引号的错误一侧。
采用:
@{expression={Get-AuthenticodeSignature $_."(default)" }; label='Signer'}
您还可以像这样获取有关证书(例如颁发者)的更多信息:
@{expression={$(Get-AuthenticodeSignature $_."(default)").SignerCertificate.Issuer }; label='Signer'}
推荐阅读
- python - 如何检查 *args 都是字符串
- python - 如何使用 API 从任何服务器无任何延迟地获取电报消息,或者是否有我可以使用的获取请求?
- python - python中.get_influence().cooks_distance的假设是什么?
- pytorch - 无法导入 pytorch-lightning
- android - 将 RecyclerView Adapter 添加到 ViewPager2 时 Android 应用程序崩溃
- python - 如何获得所需的 libpython3.8.so.1.0 版本?
- label - Tikz中plot3中的标签和节点?
- python - 如何在 Python 中放置 2 个趋势线的方程
- flutter - 在日期和时间出现的按钮
- javascript - 如何分解 openweathermap API 返回的这个长字符串?