Get-History
获取在当前会话过程中输入的命令列表。
语法
Get-History
[[-Id] <Int64[]>]
[[-Count] <Int32>]
[<CommonParameters>]
说明
Get-History
cmdlet 可获取会话历史记录,即在当前会话过程中输入的命令列表。
PowerShell 会自动维护每个会话的历史记录。 会话历史记录中的条目数由 $MaximumHistoryCount
首选项变量的值确定。 从 Windows PowerShell 3.0 开始,默认值为 4096
。 默认情况下,历史记录文件保存在主目录中,但你可以将该文件保存在任何位置。 有关 PowerShell 中的历史记录功能的详细信息,请参阅 about_History。
会话历史记录独立于 PSReadLine 模块维护的历史记录进行管理。 这两个历史记录在加载 PSReadLine 的会话中都可用。 此 cmdlet 仅适用于会话历史记录。 有关详细信息,请参阅 about_PSReadLine。
示例
示例 1:获取会话历史记录
此示例获取会话历史记录中的条目。 将默认显示每个命令及其 ID,指示其运行顺序。
Get-History
示例 2:获取包含字符串的条目
此示例获取命令历史记录中包含字符串“service”的条目。 第一个命令获取会话历史记录中的所有条目。 管道运算符 (|
) 将结果传递给 Where-Object
cmdlet,此 cmdlet 只选择包含“service”的命令。
Get-History | Where-Object {$_.CommandLine -like "*Service*"}
示例 3:将历史记录条目导出到特定 ID
此示例获取以条目 7 结尾的五个最新历史记录条目。 管道运算符将结果传递给 Export-Csv
cmdlet,此 cmdlet 将历史记录的格式设置为以逗号分隔的文本,并将其保存在 History.csv 文件中。 该文件包括将历史记录的格式设置为列表时显示的数据。 这包括该命令的状态以及开始和结束时间。
Get-History -ID 7 -Count 5 | Export-Csv -Path History.csv
示例 4:显示最新的命令
此示例获取命令历史记录中的最后一个命令。 最后一个命令是最新输入的命令。 此命令使用 Count 参数以仅显示一个命令。 默认情况下,Get-History
获取最近的命令。 此命令可缩写为“h -c 1”,等效于按向上箭头键。
Get-History -Count 1
示例 5:显示历史记录中的条目的所有属性
此示例显示会话历史记录中的条目的所有属性。 管道运算符将 Get-History
命令的结果传递给 Format-List
cmdlet,后者将显示每个历史记录条目的所有属性。 这包括该命令的 ID、状态以及开始和结束时间。
Get-History | Format-List -Property *
参数
-Count
指定此 cmdlet 获取的最新历史记录条目数。 默认情况下,Get-History
将获取会话历史记录中的所有条目。 如果在命令中同时使用 Count 和 Id 参数,显示结果将以 Id 参数指定的命令结尾。
在 Windows PowerShell 2.0 中,默认情况下,Get-History
将获取 32 个最近的条目。
类型: | Int32 |
Position: | 1 |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Id
指定会话历史记录中的条目的 ID 数组。 Get-History
仅获取指定的条目。 如果在命令中同时使用 Id 和 Count 参数,则 Get-History
将获取以 Id 参数指定的条目结尾的最新条目。
类型: | Int64[] |
Position: | 0 |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
输入
可以通过管道将历史记录 ID 传递给此 cmdlet。
输出
此 cmdlet 将返回它所获取的每个历史记录项的历史记录对象。
备注
PowerShell 包含 Get-History
的以下别名:
- 所有平台:
h
history
ghy
会话历史记录是在会话期间输入的命令的列表。 会话历史记录表示命令的运行顺序、状态以及开始和结束时间。 当你输入每个命令时,PowerShell 会将其添加到历史记录,以便对其进行重复使用。 有关命令历史记录的详细信息,请参阅 about_History。
从 Windows PowerShell 3.0 开始,$MaximumHistoryCount
首选项变量的默认值为 4096
。 在 Windows PowerShell 2.0 中,该默认值为 64
。 有关 $MaximumHistoryCount
变量的详细信息,请参阅 about_Preference_Variables。