Clear-Item
清除项的内容,但不删除该项。
语法
Clear-Item
[-Path] <String[]>
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[<CommonParameters>]
Clear-Item
-LiteralPath <String[]>
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[<CommonParameters>]
说明
Clear-Item
cmdlet 可以清除项的内容,但不删除该项。
例如,Clear-Item
cmdlet 可以删除变量的值,但不会删除该变量。 用于表示已清除项的值由每个 PowerShell 提供程序定义。
此 cmdlet 类似于 Clear-Content
,但前者用于处理别名和变量,而不是文件。
示例
示例 1:清除变量的值
此命令清除名为 TestVar1
的变量的值。
该变量仍将保留并且有效,但其值设置为 $null
。
该变量名加有前缀 Variable:
以指示 PowerShell Variable 提供程序。
其他命令表明若要获取相同结果,可以切换到 PowerShell Variable:
驱动器,然后运行 Clear-Item
命令。
Clear-Item Variable:TestVar1
Set-Location Variable:
PS Variable:\> Clear-Item TestVar1
示例 2:清除所有注册表条目
此命令清除“MyKey”子项中的所有注册表条目,但仅在提示你确认你的意图后才会删除。 此命令不会删除“MyKey”子项,也不会影响其他任何注册表项或条目。 可以使用 Include 参数和 Exclude 参数来标识特定的注册表项,但不能使用这两个参数来标识注册表条目。
- 若要删除特定的注册表条目,请使用
Remove-ItemProperty
cmdlet。 - 若要删除注册表条目的值,请使用
Clear-ItemProperty cmdlet
。
Clear-Item HKLM:\Software\MyCompany\MyKey -Confirm
参数
-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
。 允许使用通配符。 仅当该命令包括项的内容时(例如 C:\Windows\*
,其中通配符指定 C:\Windows
目录的内容),Exclude 参数才有效。
类型: | String[] |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | True |
-Filter
指定用于限定 Path 参数的筛选器。 FileSystem 提供程序是唯一支持使用筛选器的已安装 PowerShell 提供程序。 可以在 about_Wildcards 中找到 FileSystem 筛选器语言的语法。 筛选器比其他参数更有效,因为提供程序是在 cmdlet 获取对象时应用筛选器,而不是在检索对象后再让 PowerShell 筛选对象。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | True |
-Force
指示 cmdlet 清除在其他情况下无法更改的项(如只读别名)。 此 cmdlet 不能清除常量。 不同提供程序有不同的实现。 有关详细信息,请参阅 about_Providers。 即使使用 Force 参数,该 cmdlet 也无法覆盖安全限制。
类型: | SwitchParameter |
Position: | Named |
默认值: | False |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Include
指定此 cmdlet 将在操作中包含的一个项或多个项(作为一个字符串数组)。 此参数值使 Path 参数有效。 请输入路径元素或模式,例如 "*.txt"
。 允许使用通配符。 仅当该命令包括项的内容时(例如 C:\Windows\*
,其中通配符指定 C:\Windows
目录的内容),Include 参数才有效。
类型: | String[] |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | True |
-LiteralPath
指定一个或多个位置的路径。 LiteralPath 的值严格按照所键入的形式使用。 不会将任何字符解释为通配符。 如果路径包括转义符,请将其括在单引号中。 单引号告知 PowerShell 不要将任何字符解释为转义序列。
有关详细信息,请参阅 about_Quoting_Rules。
类型: | String[] |
别名: | PSPath |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-Path
指定要清除的项的路径。 允许使用通配符。 此参数为必需参数,但参数名 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 |
输入
可以通过管道将路径字符串传递给此 cmdlet。
输出
None
此 cmdlet 不返回任何输出。
备注
Windows PowerShell 包含以下 Clear-Item
别名:
cli
只有某些 PowerShell 提供程序(包括 Alias、Environment、Function、Registry 和 Variable 提供程序)支持
Clear-Item
cmdlet。 因此,可以使用Clear-Item
删除提供程序命名空间中各项的内容。 若要列出会话中可用的提供程序,请键入Get-PsProvider
。 有关详细信息,请参阅 about_Providers。无法使用
Clear-Item
来删除文件的内容,因为 PowerShell FileSystem 提供程序不支持此 cmdlet。 若要清除文件,请使用Clear-Content
。