查看所有 PowerShell 会话的命令历史记录
Rohan Timalsina
2022年5月16日
PowerShell 维护每个会话的历史记录。PowerShell 的 Get-History
cmdlet 列出了在当前会话期间输入的所有命令。
$MaximumHistoryCount
变量确定会话历史记录中的条目数。默认值为 4096
。
它显示了每个命令及其 ID,它指示了它们的执行顺序。
Get-History
输出:
Id CommandLine
-- -----------
1 Get-Date
2 Get-ChildItem
3 Get-Content test.txt
4 Get-Command gcc
Get-History
仅显示在当前会话中输入的先前命令。
默认情况下,PowerShell 将所有会话的命令历史记录存储在位于用户主目录中的文本文件中。本教程将教你查看所有 PowerShell 会话中的命令历史记录。
使用 (Get-PSReadlineOption).HistorySavePath
查看所有 PowerShell 会话的命令历史记录
以下命令打印保存命令历史记录的文件的路径。
(Get-PSReadlineOption).HistorySavePath
输出:
C:\Users\rhntm\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txt
你可以使用 Get-Content
cmdlet 列出保存在该文件中的所有内容。
Get-Content (Get-PSReadlineOption).HistorySavePath
或者
Get-Content C:\Users\rhntm\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txt
这两个命令都将在控制台上打印之前在所有 PowerShell 会话中执行的一长串命令。
这是输出的简短概述。
输出:
Get-Date
date = Get-Date -format "yyyyMMdd"
$date = Get-Date -format "yyyyMMdd"
date
$date
$dateStr = $date -format "yyyyMMdd"
$dateStr = date -format "yyyyMMdd"
$dateStr
你还可以在 notepad
等文本编辑器中打开文件并查看命令历史记录。
notepad (Get-PSReadlineOption).HistorySavePath
输出:
Author: Rohan Timalsina