Clear-History
从 PowerShell 命令历史记录中删除条目。
语法
IDParameter (默认值)
Clear-History
[[-Id] <int[]>]
[[-Count] <int>]
[-Newest]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
CommandLineParameter
Clear-History
[[-Count] <int>]
[-CommandLine <string[]>]
[-Newest]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
说明
Clear-History 从 PowerShell 会话中删除命令历史记录。 每个 PowerShell 会话都有自己的命令历史记录。 若要显示命令历史记录,请使用 Get-History cmdlet。
默认情况下,Clear-History 从 PowerShell 会话中删除整个命令历史记录。 可以将参数与 Clear-History 一起使用,以删除所选命令。
Clear-History 未清除 PSReadLine 命令历史记录文件。
PSReadLine 模块存储一个历史记录文件,其中包含来自每个 PowerShell 会话的每个 PowerShell 命令。 在 PowerShell 提示符下,使用键盘上的向上和向下箭头滚动浏览命令历史记录。 若要显示命令历史记录的 PSReadLine 配置,请使用 Get-PSReadLineOption。
PSReadLine 随 PowerShell 5.0 及更高版本一起提供。 有关详细信息,请参阅 PSReadLine 和 about_PSReadLine。
示例
示例 1:从 PowerShell 会话中删除命令历史记录
此命令从 PowerShell 会话的历史记录中删除所有命令。
PS> Get-History
Id CommandLine
-- -----------
1 Set-Location .\Test
2 Update-Help
3 Set-Location C:\Test\Logs
4 Get-Location
PS> Clear-History
PS> Get-History
Id CommandLine
-- -----------
5 Clear-History
Get-History cmdlet 显示 PowerShell 会话的历史记录。
Clear-History 删除整个命令历史记录。
Get-History 显示更新的命令历史记录,并确认删除了以前的历史记录。
示例 2:删除最新的命令
此命令使用 Count 和 Newest 参数从 PowerShell 会话历史记录中删除最新的命令。
PS> Get-History
Id CommandLine
-- -----------
1 Set-Location C:\Test\
2 Get-Command Clear-History
3 Get-Command Clear-History -Syntax
4 Get-Command Clear-History -ShowCommandInfo
5 Get-Help Get-Alias
6 Get-Command Get-ChildItem -Syntax
7 Get-Help Clear-History
8 Set-Location C:\Test\Logs
9 Get-Help Get-Variable
10 Get-Help Get-ChildItem
PS> Clear-History -Count 5 -Newest
PS> Get-History
Id CommandLine
-- -----------
1 Set-Location C:\Test\
2 Get-Command Clear-History
3 Get-Command Clear-History -Syntax
4 Get-Command Clear-History -ShowCommandInfo
5 Get-Help Get-Alias
11 Clear-History -Count 5 -Newest
Get-History cmdlet 显示 PowerShell 会话的历史记录。
Clear-History 用于删除命令历史记录。
Count 参数指定要删除的命令数,包括指定的 ID。最新 参数 指定从历史记录中清除最新的命令。
Get-History 显示更新的命令历史记录,并确认删除了五个最新命令,Id 6 - Id 10。
示例 3:删除与特定条件匹配的命令
此命令将删除与 CommandLine 参数定义的特定条件匹配的命令。
PS C:\Test> Get-History
Id CommandLine
-- -----------
1 Set-Location C:\Test\
2 Get-Command Clear-History
3 Get-Command Clear-History -Syntax
4 Get-Command Clear-History -ShowCommandInfo
5 Get-Help Get-Alias
6 Get-Command Get-ChildItem -Syntax
7 Get-Help Clear-History
PS> Clear-History -CommandLine *Help*, *Syntax
PS> Get-History
Id CommandLine
-- -----------
1 Set-Location C:\Test\
2 Get-Command Clear-History
4 Get-Command Clear-History -ShowCommandInfo
8 Clear-History -CommandLine *Help*, *Syntax
Get-History cmdlet 显示 PowerShell 会话的历史记录。
Clear-History 删除命令历史记录。
CommandLine 参数指定包含 Help 或以 Syntax 结尾的命令。
Get-History 显示更新的命令历史记录,并确认命令 ID 3、Id 5、Id 6,以及删除了 ID 7。
示例 4:按 ID 号删除命令
此命令使用 Id删除特定历史记录项。若要删除多个命令,请提交以逗号分隔的 ID 列表 数字。
PS> Get-History
Id CommandLine
-- -----------
1 Set-Location C:\Test\
2 Get-History
3 Get-Help Get-Alias
4 Get-Command Clear-History
5 Get-Command Clear-History -Syntax
6 Get-Command Clear-History -ShowCommandInfo
PS C:\> Clear-History -Id 3, 5
PS> Get-History
Id CommandLine
-- -----------
1 Set-Location C:\Test\
2 Get-History
4 Get-Command Clear-History
6 Get-Command Clear-History -ShowCommandInfo
7 Get-History
8 Clear-History -Id 3, 5
Get-History cmdlet 显示 PowerShell 会话的历史记录。
Clear-History 删除命令历史记录。
Id 参数指定要删除的命令。
Get-History 显示更新的命令历史记录,并确认删除了 ID 3 和 Id 5。
示例 5:按 Id 编号和计数删除命令
此命令使用 Id 和 Count 参数删除命令历史记录。 命令会按照相反的顺序(从最新到最旧)从指定的 Id 中删除。
PS> Get-History
Id CommandLine
-- -----------
1 Set-Location C:\Test\
2 Get-Command Clear-History
3 Get-Command Clear-History -Syntax
4 Get-Command Clear-History -ShowCommandInfo
5 Get-Help Get-Alias
6 Get-Command Get-ChildItem -Syntax
7 Get-Help Clear-History
8 Set-Location C:\Test\Logs
9 Get-Help Get-Variable
10 Get-Help Get-ChildItem
PS> Clear-History -Id 7 -Count 5
PS> Get-History
Id CommandLine
-- -----------
1 Set-Location C:\Test\
2 Get-Command Clear-History
8 Set-Location C:\Test\Logs
9 Get-Help Get-Variable
10 Get-Help Get-ChildItem
11 Clear-History -Id 7 -Count 5
Get-History cmdlet 显示 PowerShell 会话的历史记录。
Clear-History 删除命令历史记录。
Id 参数指定以 Id 7开头。
Count 参数指定删除五个命令,包括指定的 ID。Get-History 显示更新的命令历史记录,并确认删除了 5 个命令,Id 3 - Id 7。
参数
-CommandLine
从 PowerShell 会话中删除命令历史记录。 该字符串必须完全匹配或使用通配符来匹配 Get-History 显示的 PowerShell 会话历史记录中的命令。 如果输入多个字符串,Clear-History 删除与任何字符串匹配的命令。
CommandLine 参数可与 Count 一起使用。
对于带空格的字符串,请使用单引号。 有关详细信息,请参阅 about_Quoting_Rules。
参数属性
| 类型: | String[] |
| 默认值: | None |
| 支持通配符: | True |
| 不显示: | False |
参数集
CommandLineParameter
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-Confirm
在运行 Clear-History cmdlet 之前,提示你进行确认。
参数属性
| 类型: | SwitchParameter |
| 默认值: | False |
| 支持通配符: | False |
| 不显示: | False |
| 别名: | cf |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-Count
指定 Clear-History 删除的历史记录条目数。 命令按顺序删除,从历史记录中最早的条目开始。
Count 和 Id 参数可以一起使用。
Count 参数指定要删除的命令数,包括指定的 ID。从指定的 ID开始,命令按反向顺序删除。 例如,如果 ID 为 30,并且 计数 为 10,Clear-History 删除项 21 到 30。
Count 和 CommandLine 参数可以一起使用。 Count 指定要删除的与 CommandLine 参数值匹配的命令数。 命令按顺序删除。
参数属性
| 类型: | Int |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | 1 |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-Id
指定 删除的命令历史记录 Clear-History。 若要显示 ID 数字,请使用 Get-History cmdlet。
ID 数字是连续的,命令在整个 PowerShell 会话中保留其 ID 编号。
Id 参数可与 Count 和 Newest 一起使用。
参数属性
| 类型: | Int[] |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
IDParameter
| Position: | 0 |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-Newest
使用 最新 参数时,Clear-History 删除历史记录中的最新条目。 默认情况下,Clear-History 删除历史记录中最早的条目。
最新 参数可与 ID 和 Count一起使用。
Count 参数指定要删除的命令数,包括指定的 ID。从指定的 ID开始,命令按顺序删除。 例如,如果 ID 为 30,并且 计数 为 10,Clear-History 删除项 30 到 39。
参数属性
| 类型: | SwitchParameter |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-WhatIf
显示 Clear-History cmdlet 运行时会发生什么情况。 命令脚本未运行。
参数属性
| 类型: | SwitchParameter |
| 默认值: | False |
| 支持通配符: | False |
| 不显示: | False |
| 别名: | 无线 |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
CommonParameters
此 cmdlet 支持通用参数:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 有关详细信息,请参阅 about_CommonParameters。
输入
None
不能通过管道将对象传递给 Clear-History。
输出
None
Clear-History 不生成任何输出。
备注
PowerShell 会话历史记录是 PowerShell 会话期间输入的命令的列表。 可以查看历史记录、添加和删除命令,以及从历史记录中运行命令。 有关详细信息,请参阅 about_History。