檢視所有 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