Remove-ItemProperty

从注册表项中删除属性及其值。

语法

Remove-ItemProperty
      [-Path] <String[]>
      [-Name] <String[]>
      [-Force]
      [-Filter <String>]
      [-Include <String[]>]
      [-Exclude <String[]>]
      [-Credential <PSCredential>]
      [-WhatIf]
      [-Confirm]
      [-UseTransaction]
      [<CommonParameters>]
Remove-ItemProperty
      -LiteralPath <String[]>
      [-Name] <String[]>
      [-Force]
      [-Filter <String>]
      [-Include <String[]>]
      [-Exclude <String[]>]
      [-Credential <PSCredential>]
      [-WhatIf]
      [-Confirm]
      [-UseTransaction]
      [<CommonParameters>]

说明

Remove-ItemProperty cmdlet 从注册表项中删除一个属性及其值。 你可以使用它删除注册表值及其存储的数据。

示例

示例 1:删除注册表值

此命令从“HKEY_LOCAL_MACHINE\Software”注册表项的“SmpApplication”子项中删除“SmpProperty”注册表值及其数据。

由于命令是从一个文件系统驱动器(PS C:\>)发出的,因此它包括到“SmpApplication”子项的完全限定路径,包括驱动器 HKLM: 和“Software”项。

它使用 Name 参数来标识要删除的注册表值。

Remove-ItemProperty -Path "HKLM:\Software\SmpApplication" -Name "SmpProperty"

示例 2:从 HKCU 位置删除注册表值

这些命令从“HKEY_CURRENT_USER\Software\MyCompany”的“MyApp”子项中删除“Options”注册表值及其数据。

第一个命令使用 Set-Location cmdlet 将当前位置更改为 HKEY_CURRENT_USER 驱动器 (HKCU:) 和“Software\MyCompany\MyApp”子项。

第二个命令使用 Remove-ItemProperty 从“MyApp”子项删除“Options”注册表值及其数据。 由于 Path 是必需的,因此该命令使用点(“.”)来指示当前位置。 它使用 Name 来指定要删除的注册表值。 它使用 Confirm 参数在删除值之前请求用户提示消息。

PS C:\> Set-Location HKCU:\Software\MyCompany\MyApp
PS HKCU:\Software\MyCompany\MyApp> Remove-ItemProperty -Path . -Name "Options" -Confirm

示例 3:使用管道删除注册表值

此命令从“HKLM\Software\MyCompany”注册表项中删除“NoOfEmployees”注册表值及其数据。

该命令使用 Get-Item cmdlet 获取表示该注册表项的项。 它使用管道运算符(|)将对象发送到 Remove-ItemProperty。 然后,使用 Remove-ItemPropertyName 参数指定该注册表值的名称。

Get-Item -Path HKLM:\Software\MyCompany | Remove-ItemProperty -Name NoOfEmployees

参数

-Confirm

提示你在运行 cmdlet 之前进行确认。

类型:SwitchParameter
别名:cf
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

-Credential

注意

随同 PowerShell 一起安装的任何提供程序都不支持此参数。 要模拟其他用户,或在运行此 cmdlet 时提升凭据,请使用 Invoke-Command

类型:PSCredential
Position:Named
默认值:Current user
必需:False
接受管道输入:True
接受通配符:False

-Exclude

指定此 cmdlet 省略的项。 此参数值使 Path 参数有效。 请输入路径元素或模式,例如“*.txt”。 允许使用通配符。

类型:String[]
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:True

-Filter

以提供程序的格式或语言指定筛选器。 此参数值使 Path 参数有效。

筛选器的语法(包括通配符字符的使用),具体取决于提供程序。 筛选器比其他参数更有效,因为提供程序是在 cmdlet 获取对象时应用筛选器,而不是在检索对象后再让 PowerShell 筛选对象。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:True

-Force

强制 cmdlet 删除用户非此不能访问的对象的属性。 不同提供程序有不同的实现。 有关详细信息,请参阅 about_Providers

类型:SwitchParameter
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

-Include

指定此 cmdlet 将在操作中包含的一个项或多个项(作为一个字符串数组)。 此参数值使 Path 参数有效。 请输入路径元素或模式,例如“*.txt”。 允许使用通配符。

类型:String[]
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:True

-LiteralPath

指定此属性的当前位置的路径。 与 Path 参数不同,LiteralPath 的值严格按照所键入的形式使用。 不会将任何字符解释为通配符。 如果路径包括转义符,请将其括在单引号中。 单引号告知 PowerShell 不要将任何字符解释为转义序列。

类型:String[]
别名:PSPath
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-Name

指定要删除的属性的名称。 允许使用通配符。

类型:String[]
别名:PSProperty
Position:1
默认值:None
必需:True
接受管道输入:True
接受通配符:True

-Path

指定要删除其属性的项的路径。 允许使用通配符。

类型:String[]
Position:0
默认值:None
必需:True
接受管道输入:True
接受通配符:True

-UseTransaction

在活动事务中使用该命令。 仅当正在执行事务时,此参数才有效。 有关详细信息,请参阅 about_Transactions

类型:SwitchParameter
别名:usetx
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

-WhatIf

显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。

类型:SwitchParameter
别名:wi
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

输入

String

可以通过管道将包含路径(但不是文本路径)的字符串传递给此 cmdlet。

输出

None

此 cmdlet 不返回任何输出。

备注

Windows PowerShell 包含 Remove-ItemProperty 的以下别名:

  • rp

在 PowerShell Registry 提供程序中,注册表值被看作是注册表项或子项的属性。 你可以使用 ItemProperty cmdlet 来管理这些值。

Remove-ItemProperty 旨在处理任何提供程序公开的数据。 若要列出会话中可用的提供程序,请键入 Get-PSProvider。 有关详细信息,请参阅 about_Providers