Invoke-History
執行工作階段歷程記錄中的命令。
語法
Invoke-History [[-Id] <string>] [-Confirm] [-WhatIf] [<CommonParameters>]
描述
Invoke-History Cmdlet 會執行工作階段歷程記錄中的命令。您可以將代表 Get-History 所傳回命令的物件傳遞到 Invoke-History,也可以在目前歷程記錄中使用命令識別碼來識別這些命令。若要尋找命令的識別碼,請使用 Get-History。
參數
-Id <string>
識別歷程記錄中的命令。可輸入命令的識別碼或是命令的前幾個字元。
如果輸入字元,Invoke-History 會先比對最近的命令。如果省略此參數,Invoke-History 將執行最後一個 (最近的) 命令。參數名稱 ("id") 為選擇項。若要尋找命令的識別碼,請使用 Get-History。
必要? |
false |
位置? |
1 |
預設值 |
|
接受管線輸入? |
true (ByPropertyName) |
接受萬用字元? |
false |
-Confirm
在執行命令前先提示確認。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
-WhatIf
說明執行命令時將會發生何種情況,但不會實際執行命令。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
<CommonParameters>
這個 Cmdlet 支援一般參數:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。如需詳細資訊,請參閱 about_Commonparameters.
輸入和輸出
輸入型別是可經由管道輸出至 Cmdlet 的物件型別。傳回型別則是 Cmdlet 所傳回的物件型別。
輸入 |
無 您無法經由管道將輸入輸出至這個 Cmdlet。 |
輸出 |
無 Invoke-History 不會產生任何輸出,但是 Invoke-History 執行的命令可能會產生輸出。 |
附註
工作階段歷程記錄是在工作階段期間所輸入命令的清單以及識別碼。工作階段歷程記錄代表執行的順序、狀態,以及命令的開始和結束時間。每當您輸入一個命令,Windows PowerShell 便會將其新增至歷程記錄,讓您可以重複使用。如需工作階段歷程記錄的詳細資訊,請參閱 about_History。
您也可以利用內建的別名 "r" 和 "ihy" 來參照 Invoke-History。如需詳細資訊,請參閱 about_Aliases。
範例 1
C:\PS>invoke-history
描述
-----------
這個命令會執行工作階段歷程記錄中的最後一個 (最近的) 命令。您可以將這個命令縮寫成 "r" (理解成 "repeat" 或 "rerun"),也就是 Invoke-History 的別名。
範例 2
C:\PS>invoke-history -id 132
描述
-----------
這個命令會執行工作階段歷程記錄中識別碼為 132 的命令。因為 Id 參數的名稱屬於選擇項,所以您可以將這個命令縮寫成 "Invoke-History 132"、"ihy 132" 或 "r 132"。
範例 3
C:\PS>invoke-history get-pr
描述
-----------
這個命令會執行工作階段歷程記錄中最近的 Get-Process 命令。當您針對 Id 參數輸入字元時,Invoke-History 就會執行它從這些最近命令開始找起而找到之符合該模式的第一個命令。這個命令會使用 ID 參數,不過它會省略選擇性參數名稱。
範例 4
C:\PS>invoke-history (16..24), 27
描述
-----------
這個命令會執行識別碼範圍 16 到 24 和識別碼 27 的命令。您可以列出多個識別碼和以逗號分隔的識別碼範圍。
範例 5
C:\PS>get-history -id 255 -count 7 | invoke-history
描述
-----------
這個命令會執行歷程記錄中最後一個命令識別碼為 255 的前 7 個命令 (通常是 249 到 255 的命令)。它會使用 Get-History Cmdlet 擷取這些命令。管線運算子 (|) 會將這些命令傳遞到 Invoke-History,並由後者執行這些命令。