Get-History

會看到當前會話中輸入的指令清單。

語法

Default (預設值)

Get-History
    [[-Id] <Int64[]>]
    [[-Count] <Int32>]
    [<CommonParameters>]

Description

指令 Get-History 小程式取得會話歷史,也就是當前會話中輸入的指令清單。

PowerShell 會自動維護每個會話的歷史紀錄。 會話歷史中的條目數量由偏好變數的 $MaximumHistoryCount 值決定。 從 PowerShell 3.0 Windows開始,預設值為 4096。 預設情況下,歷史檔案會儲存在主目錄,但你可以將檔案儲存在任何位置。 欲了解更多關於 PowerShell 歷史特性的資訊,請參見 about_History。

會話歷程記錄會與 PSReadLine 模組所維護的歷程記錄分開管理。 這兩個歷程記錄可在載入 PSReadLine 的會話中使用。 此 Cmdlet 僅適用於會話歷程記錄。 如需詳細資訊,請參閱 about_PSReadLine。

範例

範例一:取得會話歷史

這個範例會取得會話歷史中的條目。 預設顯示會顯示每個指令及其 ID,顯示指令執行的順序。

Get-History

範例 2:取得包含字串的條目

此範例在指令歷史中取得包含字串服務的條目。 第一個指令會取得會話歷史中的所有條目。 管線操作員(|)將結果傳給 Where-Object cmdlet,指令本只選擇包含服務的指令。

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,顯示每個歷史項目的所有屬性。 這包括指令的識別碼、狀態,以及開始和結束時間。

Get-History | Format-List -Property *

參數

-Count

指定此指令子所獲得的最新歷史條目數量。 預設情況下, Get-History 會取得會話歷史中的所有條目。 如果你在指令中使用 Count 和 Id 參數,顯示會以 Id 參數指定的指令結束。

在 PowerShell 2.0 Windows 中,預設是 Get-History 取得最近 32 個條目。

參數屬性

類型:Int32
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:1
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Id

指定會話歷史中條目的 ID 陣列。 Get-History 只獲得指定的條目。 如果你在指令中同時使用 Id 和 Count 參數, Get-History 會取得以 Id 參數指定的條目結尾的最新條目。

參數屬性

類型:

Int64[]

預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:0
必要:False
來自管線的值:True
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

CommonParameters

此 cmdlet 支援常見參數:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters。

輸入

Int64

你可以把歷史 ID 輸入這個 cmdlet。

輸出

HistoryInfo

這個指令檔會為每個取得的歷史項目回傳一個歷史物件。

備註

PowerShell 包含下列 Get-History的別名:

  • 所有平臺:
    • h
    • history
    • ghy

工作階段歷程記錄是工作階段期間輸入的命令清單。 會話歷史代表指令的執行順序、狀態,以及指令的開始和結束時間。 當您輸入每個命令時,PowerShell 會將它新增至歷程記錄,以便重複使用它。 關於指揮歷史的更多資訊,請參見 about_History。

從 PowerShell 3.0 Windows開始,$MaximumHistoryCount偏好變數的預設值為 4096。 在 PowerShell 2.0 Windows,預設值是 64。 如需 $MaximumHistoryCount 變數的詳細資訊,請參閱 about_Preference_Variables。