查看所有 PowerShell 会话的命令历史记录

Rohan Timalsina 2022年5月16日
查看所有 PowerShell 会话的命令历史记录

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

输出:

查看所有 powershell 会话的命令历史记录

作者: Rohan Timalsina
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website