Invoke-History

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

语法

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

说明

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

参数

-Id <string>

标识历史记录中的命令。您可以键入命令的 ID 号或命令的头几个字符。

如果键入字符,则 Invoke-History 首先匹配最近的命令。如果省略此参数,则 Invoke-History 运行最后一个(最近的)命令。参数名(“id”)为可选项。若要查找命令的 ID 号,请使用 Get-History。

是否为必需?

false

位置?

1

默认值

是否接受管道输入?

true (ByPropertyName)

是否接受通配符?

false

-Confirm

在执行命令之前提示您进行确认。

是否为必需?

false

位置?

named

默认值

是否接受管道输入?

false

是否接受通配符?

false

-WhatIf

描述如果执行该命令会发生什么情况(无需实际执行该命令)。

是否为必需?

false

位置?

named

默认值

是否接受管道输入?

false

是否接受通配符?

false

<CommonParameters>

此 cmdlet 支持通用参数:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。有关详细信息,请参阅 about_Commonparameters.

输入和输出

输入类型是指可通过管道传递给 cmdlet 的对象的类型。返回类型是指 Cmdlet 所返回对象的类型。

输入

不能通过管道将输入传递给此 cmdlet。

输出

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

说明

会话历史记录是会话期间输入的命令(包含 ID)的列表。会话历史记录表示命令的执行顺序、状态以及开始和结束时间。输入每条命令时,Windows PowerShell 会将其添加到历史记录中,以便对其进行重复利用。有关会话历史记录的详细信息,请参阅 about_History。

还可以使用 Invoke-History 的内置别名“r”和“ihy”来对其进行引用。有关详细信息,请参阅 about_Aliases。

示例 1

C:\PS>invoke-history

说明
-----------
此命令运行会话历史记录中的最后一个(最近的)命令。您可以将此命令缩写为“r”(指“repeat”或“rerun”),这是 Invoke-History 的别名。





示例 2

C:\PS>invoke-history -id 132

说明
-----------
此命令运行会话历史记录中 ID 为 132 的命令。由于 Id 参数的名称是可选的,因此,可以将此命令缩写为“Invoke-History 132”、“ihy 132”或“r 132”。





示例 3

C:\PS>invoke-history get-pr

说明
-----------
此命令运行会话历史记录中的最近的 Get-Process 命令。在键入 Id 参数的字符时,Invoke-History 运行它发现的匹配该模式的第一个命令(从最近的命令开始)。此命令使用 ID 参数,但省略可选的参数名。





示例 4

C:\PS>invoke-history (16..24), 27

说明
-----------
此命令运行命令 16 至 24 及命令 27。您可以列出用逗号分隔的多个 ID 和 ID 范围。





示例 5

C:\PS>get-history -id 255 -count 7 | invoke-history

说明
-----------
此命令运行历史记录中以命令 255 结束的 7 个命令(通常是 249 到 255)。它使用 Get-History cmdlet 检索命令。管道运算符 (|) 将命令传递给 Invoke-History,后者执行这些命令。





另请参阅

概念

about_History
Get-History
Add-History
Clear-History