Invoke-History

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

语法

Default (默认值)

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

说明

Invoke-History cmdlet 从会话历史记录运行命令。 可以将表示命令的对象从 Get-History 传递到 Invoke-History,也可以使用其 ID 号标识当前历史记录中的命令。 若要查找命令的标识号,请使用 Get-History cmdlet。

示例

示例 1:在历史记录中运行最新的命令

PS C:\> Invoke-History

此命令在会话历史记录中运行最后或最新命令。 可以将此命令缩写为 rInvoke-History的别名。

示例 2:运行具有指定 ID 的命令

PS C:\> Invoke-History -Id 132

此命令在 ID 为 132 的会话历史记录中运行该命令。 由于 Id 参数的名称是可选的,因此可以缩写此命令,如下所示:Invoke-History 132ihy 132r 132

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

PS C:\> Invoke-History -ID get-pr

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

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

PS C:\> 16..24 | ForEach {Invoke-History -Id $_ }

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

示例 5

PS C:\> Get-History -Id 255 -Count 7 | ForEach {Invoke-History -Id $_.Id}

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

参数

-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 不生成任何输出,但输出可能由 Invoke-History 运行的命令生成。

备注

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

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