Get-History 帮助信息

时间:2021-02-06 00:38:33
如下说明是翻译 PowerShell : help Get-History 产生的帮助信息 .
译者 : Edengundam( 马涛 )
 
Get-History
 
大纲
取得在当前会话中输入命令的列表 .
 
语法
Get-History [[-id] <long[]>] [[-count] <int>] [<CommonParameters>]
 
详细描述
Get-History cmdlet 取得会话历史 , 它是当前会话中输入命令的列表 . Windows PowerShell 为每个会话自动维护历史信息 . 你可以将会话历史以 XML 或者 CSV 格式保存 . 默认情况下 , 历史文件保存在主目录下 ($home), 但是你可以将其存储在任何位置 .
 
参数
 
-id <long[]>
指定会话历史中命令的 ID . Get-History 取得指定的命令 . 如果你同时使用 Id Count, Get-History 将会取得到 Id 参数指定的命令号的最近输入命令 .
 
强制参数 ?
false
参数位置 ?
1
默认值
当前 ID 之前的所有 ID
允许从管道绑定输入 ?
true ( 根据值 )
允许通配符扩展 ?
false
 
-count <int>
显示指定数量的最近历史项 . 默认值为 32. 如果你在一个命令中同时使用 Count Id, 则显示将结束在指定的 Id 命令处 .
 
强制参数 ?
false
参数位置 ?
2
默认值
32
允许从管道绑定输入 ?
false
允许通配符扩展 ?
false
 
< 公共参数 >
此命令支持公共参数 : -Verbose, -Debug, -ErrorAction, -ErrorVariable, and -OutVariable. 更多信息 , 输入 , "get-help about_commonparameters".
 
输入类型
None
 
返回类型
HistoryInfo 对象
 
注意
 
更多信息 , 输入 "Get-Help Get-History -detailed". 需要技术信息 , 输入 "Get-Help Get-History -full".
 
会话历史是在会话期间输入的命令以及它们对应的 ID 号列表 , ID 号用来表示命令执行的顺序 , 状态和结束时间 . 随着你每次输入命令 , Windows PowerShell 将它们添加到历史中 , 使您之后可以重新使用它 .
 
默认情况下 , 历史可以记录 64 条命令 , 你可以通过修改变量 $MaximumHistoryCount 的值来修改记录命令的数量 . 当历史信息记录满时 , 将会删除最久的命令来记录新的命令 .
 
你只能通过结束 Windows PowerShell 会话来清空会话历史 .
 
当命令执行完毕时才会被添加到历史中 , 而不是在输入时 . 如果命令执行时间较长 , 或者是在嵌套的提示符 ( 只有在退出嵌套提示符下才算完成 ) 下执行 , 他们可能会与实际输入的顺序不一致 .
 
除了可以使用 Get-History 命令 , 你可以通过使用键盘的上下箭头在历史中导航 . 关于会话历史的更多信息 , 键入 "get-help about_history".
 
如果需要为该命令提供多个参数 , 请使用逗号进行分隔 . 例如 , "<parameter-name> <value1>, <value2>".
 
你可以使用 Get-History 内建别名 "h", "history" "ghy". 需要更多信息 , 查看 About_Alias.
 
1
 
C:/PS>get-history
 
此命令取得最近提交的 32 个命令 . 默认显示命令及其 ID , 后者指示了执行的顺序 .
 
2
 
C:/PS>get-history | where-object {$_.commandLine -like "*service*"}
 
此命令取得历史中包含单词 "service" 的历史项 . 第一个命令取得会话历史中最近输入的 32 个命令 . 管道运算符 (|) 将结果发送给 Where-Object cmdlet, 后者只选择包含 "service" 单词的命令 .
 
3
 
C:/PS>get-history -id 7 -count 5 | export-csv history.csv
  
此命令取得以 7 结尾的最后输入的 5 个历史项 . 管道符 (|) 将结果发送给 Export-Csv cmdlet, 后者将历史格式化为 CSV 文件并将其保存为 History.csv 文件 . 文件保存了当你以列表形式显示历史时的数据 , 包含了状态 , 命令开始和结束时间 .
 
4
 
C:/PS>get-history -count 1
 
此命令取得历史中最后 ( 最近输入的 ) 的命令 . 它使用了参数 Count 来显示一个命令 . 默认情况下 , Get-History 显示最近输入的命令 . 此命令可以缩写为 "h -c 1", 也等价于按一下键盘的上箭头 .
 
5
 
C:/PS>get-history -count $MaximumHistoryCount
 
此命令显示所有保存的会话历史 . 默认情况下 , $MaximumHistoryCount 等于 64, 所以此命令可以简写为 "h -c 64".
 
6
 
C:/PS>get-history | format-list
 
此命令显示会话历史中项的所有属性 . 管道符号 (|) 将结果发送给 Format-List cmdlet, 后者将会显示每个历史项的所有属性 , 包括了 ID, 状态以及命令的开始和结束时间 .
 
相关链接
Invoke-History
Add-History