Invoke-History
Führt Befehle aus dem Sitzungsverlauf aus.
Syntax
Invoke-History
[[-Id] <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Beschreibung
Das Cmdlet Invoke-History
führt Befehle aus dem Sitzungsverlauf aus. Sie können Objekte übergeben, die die Befehle von Get-History an Invoke-History
darstellen, oder Sie können Befehle im aktuellen Verlauf mithilfe der ID Nummer identifizieren. Verwenden Sie das Cmdlet Get-History
, um die Identifikationsnummer eines Befehls zu finden.
Der Sitzungsverlauf wird getrennt vom Verlauf verwaltet, der vom PSReadLine Modul verwaltet wird. Beide Historien sind in Sitzungen verfügbar, in denen PSReadLine- geladen wird. Dieses Cmdlet funktioniert nur mit dem Sitzungsverlauf. Weitere Informationen finden Sie about_PSReadLine.
Beispiele
Beispiel 1: Ausführen des letzten Befehls im Verlauf
In diesem Beispiel wird der letzte oder aktuellste Befehl im Sitzungsverlauf ausgeführt. Sie können diesen Befehl als r
, den Alias für Invoke-History
abkürten.
Invoke-History
Beispiel 2: Ausführen des Befehls mit einer angegebenen ID
In diesem Beispiel wird der Befehl im Sitzungsverlauf mit ID 132 ausgeführt. Da der Name des parameters ID optional ist, können Sie diesen Befehl wie folgt abkürten: Invoke-History 132
, ihy 132
oder r 132
.
Invoke-History -Id 132
Beispiel 3: Ausführen des neuesten Befehls mithilfe des Befehlstexts
In diesem Beispiel wird der letzte Get-Process
Befehl im Sitzungsverlauf ausgeführt. Wenn Sie Zeichen für den Parameter ID eingeben, führt Invoke-History
den ersten Befehl aus, der dem Muster entspricht, beginnend mit den neuesten Befehlen.
Invoke-History -Id get-pr
Anmerkung
Bei mustervergleichen wird die Groß-/Kleinschreibung nicht beachtet, das Muster entspricht jedoch dem Anfang der Zeile.
Beispiel 4: Ausführen einer Abfolge von Befehlen aus dem Verlauf
In diesem Beispiel werden Befehle von 16 bis 24 ausgeführt. Da Sie nur einen ID- Wert auflisten können, verwendet der Befehl das Cmdlet ForEach-Object
, um den befehl Invoke-History
einmal für jeden ID- Wert auszuführen.
16..24 | ForEach-Object {Invoke-History -Id $_ }
Beispiel 5
In diesem Beispiel werden die sieben Befehle im Verlauf ausgeführt, die mit Befehl 255 (249 bis 255) enden. Es verwendet das Cmdlet Get-History
, um die Befehle abzurufen. Da Sie nur einen ID- Wert auflisten können, verwendet der Befehl das Cmdlet ForEach-Object
, um den Befehl Invoke-History
einmal für jeden ID- Wert auszuführen.
Get-History -Id 255 -Count 7 | ForEach-Object {Invoke-History -Id $_.Id}
Parameter
-Confirm
Fordert Sie vor dem Ausführen des Cmdlets zur Bestätigung auf.
Typ: | SwitchParameter |
Aliase: | cf |
Position: | Named |
Standardwert: | False |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Id
Gibt die ID- eines Befehls im Verlauf an. Sie können die ID Anzahl des Befehls oder die ersten Zeichen des Befehls eingeben.
Wenn Sie Zeichen eingeben, entspricht Invoke-History
zuerst den neuesten Befehlen. Wenn Sie diesen Parameter weglassen, führt Invoke-History
den letzten oder letzten Befehl aus. Verwenden Sie das Cmdlet Get-History
, um die ID Anzahl eines Befehls zu finden.
Typ: | String |
Position: | 0 |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-WhatIf
Zeigt, was passiert, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.
Typ: | SwitchParameter |
Aliase: | wi |
Position: | Named |
Standardwert: | False |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
Eingaben
Sie können einen Verlauf ID- an dieses Cmdlet weiterleiten.
Ausgaben
None
Dieses Cmdlet gibt keine eigene Ausgabe zurück, aber die ausgeführten Befehle geben möglicherweise ihre eigene Ausgabe zurück.
Hinweise
PowerShell enthält die folgenden Aliase für Invoke-History
:
- Alle Plattformen:
ihy
r
Der Sitzungsverlauf ist eine Liste der Befehle, die während der Sitzung eingegeben wurden. Der Sitzungsverlauf stellt die Reihenfolge der Ausführung, den Status und die Start- und Endzeiten des Befehls dar. Während Sie jeden Befehl eingeben, fügt PowerShell ihn dem Verlauf hinzu, damit Sie ihn wiederverwenden können. Weitere Informationen zum Sitzungsverlauf finden Sie unter about_History.