gpt4 book ai didi

powershell - 测试路径 PowerShell 问题

转载 作者:行者123 更新时间:2023-12-02 23:57:05 24 4
gpt4 key购买 nike

我正在尝试搜索多个服务器以查看是否存在特定的注册表项。

看起来下面的代码正在运行,但是当我开始添加 key 的最后一部分时,它会停止“查找”内容。我可以开始添加a* ,然后 ab*作为最后一个键,但是一旦我到达第三个字符甚至是我知道的完整字符串,它就会返回 False 说它没有找到它。

$servers = Get-Content c:\input.txt | `
Select-Object @{l='ComputerName';e={$_}},@{l='KeyExist';e={Test-Path "HKLM:\System\CurrentControlSet\services\*abcdefg*" }}
$servers | Format-Table -AutoSize

最佳答案

您的问题是您运行 Test-Path针对每个远程服务器名称的本地计算机。不幸的是 Test-Path不支持查询远程注册表。

您可以使用 WMI:

$RegProv = [wmiclass]"\\$servername\root\default:StdRegProv"
if($RegProv.EnumKey(2147483650,"System\CurrentControlSet\services").sNames -like 'abc*'){
# key starting with abc exists
}

将其包装在您的计算属性中,如下所示:
@{Name='KeyExists';Expression={[bool](([wmiclass]"\\$_\root\default:StdRegProv").EnumKey(2147483650,"System\CurrentControlSet\services").sNames -like 'abc*')}}

关于powershell - 测试路径 PowerShell 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42420758/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com