Invoke-History
运行会话历史记录中的命令。
语法
Default (默认值)
Invoke-History
[[-Id] <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
说明
Invoke-History cmdlet 从会话历史记录运行命令。 可以将表示命令的对象从 Get-History 传递到 Invoke-History,也可以使用其 ID 编号来标识当前历史记录中的命令。 若要查找命令的标识号,请使用 Get-History cmdlet。
会话历史记录独立于 PSReadLine 模块维护的历史记录进行管理。 这两个历史记录在加载 PSReadLine 的会话中都可用。 此 cmdlet 仅适用于会话历史记录。 有关详细信息,请参阅 about_PSReadLine。
示例
示例 1:在历史记录中运行最新的命令
此示例在会话历史记录中运行最后一个或最新的命令。 可以将此命令缩写为 r,Invoke-History的别名。
Invoke-History
示例 2:运行具有指定 ID 的命令
此示例在会话历史记录中运行 ID 132 的命令。 由于 Id 参数的名称是可选的,因此可以缩写此命令,如下所示:Invoke-History 132、ihy 132或 r 132。
Invoke-History -Id 132
示例 3:使用命令文本运行最新的命令
此示例在会话历史记录中运行最新的 Get-Process 命令。 键入 ID 参数的字符时,Invoke-History 运行它找到与模式匹配的第一个命令,从最近的命令开始。
Invoke-History -Id get-pr
注释
模式匹配不区分大小写,但模式与行的开头匹配。
示例 4:从历史记录运行一系列命令
此示例运行命令 16 到 24。 由于只能列出一个 ID 值,因此该命令使用 ForEach-Object cmdlet 为每个 Invoke-History 值运行 命令一次。
16..24 | ForEach-Object {Invoke-History -Id $_ }
示例 5
此示例在历史记录中运行以命令 255(249 到 255)结尾的七个命令。 它使用 Get-History cmdlet 检索命令。 由于只能列出一个 ID 值,因此该命令使用 ForEach-Object cmdlet 为每个 Invoke-History 值运行一次 命令。
Get-History -Id 255 -Count 7 | ForEach-Object {Invoke-History -Id $_.Id}
参数
-Confirm
在运行 cmdlet 之前,提示你进行确认。
参数属性
| 类型: | SwitchParameter |
| 默认值: | False |
| 支持通配符: | False |
| 不显示: | False |
| 别名: | cf |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-Id
指定历史记录中命令的 Id。 可以键入 ID 命令的编号或命令的前几个字符。
如果键入字符,Invoke-History 首先匹配最新的命令。 如果省略此参数,Invoke-History 运行最后或最新的命令。 若要查找命令的 ID 编号,请使用 Get-History cmdlet。
参数属性
| 类型: | String |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | 0 |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
-WhatIf
显示 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。
输入
String
可以通过管道将历史记录 Id 传递给此 cmdlet。
输出
None
此 cmdlet 不返回自己的输出,但它运行的命令可能会返回自己的输出。
备注
PowerShell 包含以下与 Invoke-History相关的别名:
- 所有平台:
ihyr
会话历史记录是会话期间输入的命令的列表。 会话历史记录表示执行顺序、状态以及命令的开始和结束时间。 输入每个命令时,PowerShell 会将其添加到历史记录中,以便重复使用它。 有关会话历史记录的详细信息,请参阅 about_History。