用于删除注册表项的PowerShell脚本

时间:2015-08-04 18:02:42

标签: windows powershell registry

我试图创建一个PowerShell脚本来检查设置的注册表项,以查找一系列名称相同的名称。那部分我工作得很好。我还需要这个脚本,而不是从该注册表中删除这些项目,我无法记住如何传递我找到的所有项目的名称,以便Remove-ItemProperty可以工作。这就是我所拥有的。

$Reg = 'HKCU:\Software\Microsoft\Windows NT\CurrentVersion\Devices'


Get-ItemProperty -Path $Reg | Select-Object IS* | ForEach-Object {$PSItem.Name} | Remove-ItemProperty -Path $Reg -Name $name

我得到的消息是Name为null,所以我没有正确存储名称。如果我只运行前两个管道,它们会正确显示。

1 个答案:

答案 0 :(得分:1)

试试这个。不得不重新写一点,以使属性名称坚持。

Get-Item -Path "$Reg" | Select-Object -ExpandProperty Property | ForEach-Object {if ($_ -match "IS*"){Remove-ItemProperty -Path "$Reg" -Name "$_"}}