Invoke-History

从会话历史记录中运行命令。

语法

Invoke-History
      [[-Id] <String>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

说明

cmdlet Invoke-History 从会话历史记录运行命令。 可以将表示命令的对象从 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 132ihy 132r 132

Invoke-History -Id 132

示例 3:使用命令文本运行最新的命令

此示例运行会话历史记录中的最新 Get-Process 命令。 为 Id 参数键入字符时,从最新的命令开始, Invoke-History 运行它找到的第一个与模式匹配的命令。

Invoke-History -Id get-pr

注意

模式匹配不区分大小写,但模式匹配行的开头。

示例 4:从历史记录中运行一系列命令

此示例运行命令 16 到 24。 由于只能列出一个 Id 值,因此该命令使用 ForEach-Object cmdlet 为每个 Id 值运行Invoke-History一次命令。

16..24 | ForEach {Invoke-History -Id $_ }

示例 5

此示例运行以命令 255 (249 到 255) 结尾的历史记录中的七个命令。 它使用 Get-History cmdlet 检索命令。 由于只能列出一个 Id 值,因此该命令使用 ForEach-Object cmdlet 为每个 Id 值运行Invoke-History一次命令。

Get-History -Id 255 -Count 7 | ForEach {Invoke-History -Id $_.Id}

参数

-Confirm

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

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Id

指定历史记录中命令的 ID 。 可以键入命令的 ID 号或命令的前几个字符。

如果键入字符, Invoke-History 则首先匹配最新的命令。 如果省略此参数, Invoke-History 请运行最后一个或最近的命令。 若要查找命令的 ID 号,请使用 Get-History cmdlet。

Type:String
Position:0
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

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

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

输入

String

可以通过管道将历史记录 ID 传递给此 cmdlet。

输出

None

此 cmdlet 不会生成任何输出,但输出可能由运行的命令 Invoke-History 生成。

备注

会话历史记录是在会话期间输入的命令的列表。 会话历史记录表示命令的执行顺序、状态以及开始和结束时间。 输入每个命令时,PowerShell 会将其添加到历史记录中,以便可以重复使用它。 有关会话历史记录的详细信息,请参阅 about_History

还可以通过其内置别名 rihy来引用 Invoke-History 。 有关详细信息,请参阅 about_Aliases