根据数据查询和删除密钥

时间:2016-09-26 14:08:29

标签: powershell

我正在尝试编写一个reg查询或者只是一个脚本来搜索注册表项并根据内部数据删除它。

Key看起来像这样:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{D642433C-50B0-4F52-9BB7-1D4AF5E99FF8}]
"somevalue"="somedata"

CLSID是完全随机的,但内部数据不是。

是否可以编写某种脚本,根据数据删除此 {D642433C-50B0-4F52-9BB7-1D4AF5E99FF8} 键。

我尝试搜索各种reg / vbs / powershell脚本,但没有任何解决方案。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

您可以使用Uninstall枚举Get-ChildItem下的所有子项,然后检查somevalue值条目是否包含所需数据:

$UninstallKeys = Get-ChildItem 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall'
foreach($Key in $UninstallKeys){
    if($Key.GetValue("somevalue") -eq "somedata"){
        Remove-Item -Path $Key.PSPath -Force
    }
}
相关问题