Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Kurzbeschreibung
PSReadLine bietet eine verbesserte Befehlszeilenbearbeitung in der PowerShell-Konsole.
Lange Beschreibung
PowerShell 7.3 wird mit PSReadLine 2.2.6 ausgeliefert. Die aktuelle Version ist PSReadLine 2.3.4. Die aktuelle Version von PSReadLine kann unter Windows PowerShell 5.1 und höher installiert und verwendet werden. Für einige Features müssen Sie PowerShell 7.2 oder höher ausführen.
In diesem Artikel werden die von PSReadLine 2.3.4 bereitgestellten Funktionen dokumentiert. Diese Funktionen können an Tastenanschläge gebunden werden, um einfachen Zugriff und Aufruf zu ermöglichen.
Verwenden der Microsoft.PowerShell.PSConsoleReadLine-Klasse
Die folgenden Funktionen sind in der Klasse Microsoft.PowerShell.PSConsoleReadLineverfügbar.
Grundlegende Bearbeitungsfunktionen
Abbrechen
Abbrechen der aktuellen Aktion, z. B. inkrementelle Verlaufssuche.
- Emacs-Modus:
Ctrl+g - Vi Einfügemodus:
Ctrl+g - Vi-Befehlsmodus:
<Ctrl+g>
AkzeptierenUndAbrufenWeiter
Versuchen Sie, die aktuelle Eingabe auszuführen. Wenn sie ausgeführt werden kann (z. B. AcceptLine), rufen Sie das nächste Element aus dem Verlauf zurück, wenn ReadLine das nächste Mal aufgerufen wird.
- Emacs-Modus:
Ctrl+o
AcceptLine (Akzeptieren)
Versuchen Sie, die aktuelle Eingabe auszuführen. Wenn die aktuelle Eingabe unvollständig ist (z. B. fehlt eine schließende Klammer, eckige Klammer oder Anführungszeichen), wird die Fortsetzungsaufforderung in der nächsten Zeile angezeigt, und PSReadLine wartet auf tasten, um die aktuelle Eingabe zu bearbeiten.
- Windows-Modus:
Enter - Emacs-Modus:
Enter - Vi Einfügemodus:
Enter
Linie hinzufügen
Die Fortsetzungsaufforderung wird in der nächsten Zeile angezeigt, und PSReadLine wartet auf Tasten, um die aktuelle Eingabe zu bearbeiten. Dies ist nützlich, um mehrzeilige Eingaben als einzelner Befehl einzugeben, auch wenn eine einzelne Zeile die Eingabe selbst abgeschlossen ist.
- Windows-Modus:
Shift+Enter - Emacs-Modus:
Shift+Enter - Vi Einfügemodus:
Shift+Enter - Vi-Befehlsmodus:
<Shift+Enter>
BackwardDeleteChar
Löschen Sie das Zeichen vor dem Cursor.
- Windows-Modus:
Backspace,Ctrl+h - Emacs-Modus:
Backspace,Ctrl+Backspace,Ctrl+h - Vi Einfügemodus:
Backspace - Vi-Befehlsmodus:
<X>,<d,h>
BackwardDeleteInput
Wie BackwardKillInput - löscht Text vom Punkt bis zum Anfang der Eingabe, aber nicht den gelöschten Text im Kill-Ring.
- Windows-Modus:
Ctrl+Home - Vi Einfügemodus:
Ctrl+u,Ctrl+Home - Vi-Befehlsmodus:
<Ctrl+u>,<Ctrl+Home>
RückwärtsLöschenZeile
Wie BackwardKillLine - löscht Text vom Punkt bis zum Anfang der Zeile, aber nicht den gelöschten Text im Kill-Ring.
- Vi-Befehlsmodus:
<d,0>
RückwärtsLöschenWort
Löscht das vorherige Wort.
- Vi-Befehlsmodus:
<Ctrl+w>,<d,b>
BackwardKillInput
Löschen Sie den Text vom Anfang der Eingabe bis zum Cursor. Der gelöschte Text wird im Kill-Ring platziert.
- Emacs-Modus:
Ctrl+u,Ctrl+x,Backspace
RückwärtsKillLine
Löschen Sie den Text vom Anfang der aktuellen logischen Zeile bis zum Cursor. Der gelöschte Text wird im Kill-Ring platziert.
- Funktion ist ungebunden.
RückwärtsKillWord
Löschen Sie die Eingabe vom Anfang des aktuellen Worts zum Cursor. Wenn sich der Cursor zwischen Wörtern befindet, wird die Eingabe vom Anfang des vorherigen Worts bis zum Cursor gelöscht. Der gelöschte Text wird im Kill-Ring platziert.
- Windows-Modus:
Ctrl+Backspace,Ctrl+w - Emacs-Modus:
Alt+Backspace,Escape,Backspace - Vi Einfügemodus:
Ctrl+Backspace - Vi-Befehlsmodus:
<Ctrl+Backspace>
BackwardReplaceChar
Ersetzt das Zeichen vor dem Cursor.
- Vi-Befehlsmodus:
<c,h>
Stornieren
Brechen Sie die aktuelle Eingabe ab, lassen Sie die Eingabe auf dem Bildschirm zurück, kehren aber wieder zum Host zurück, sodass die Eingabeaufforderung erneut ausgewertet wird.
- Vi Einfügemodus:
Ctrl+c - Vi-Befehlsmodus:
<Ctrl+c>
Wort groß schreiben
Hinzugefügt in PSReadLine 2.3.0
Konvertieren Sie das erste Zeichen des nächsten Worts in Großbuchstaben und die verbleibenden Zeichen in Kleinbuchstaben.
- Emacs-Modus:
Alt+c,Escape,c
Kopieren
Kopieren Sie den ausgewählten Bereich in die Systemablage. Wenn kein Bereich ausgewählt ist, kopieren Sie die gesamte Zeile.
- Windows-Modus:
Ctrl+C
CopyOrCancelLine
Wenn Text markiert ist, kopieren Sie sie in die Zwischenablage, andernfalls brechen Sie die Zeile ab.
- Windows-Modus:
Ctrl+c - Emacs-Modus:
Ctrl+c
Schneiden
Löschen Sie den ausgewählten Bereich, in dem gelöschter Text in der Systemablage platziert wird.
- Windows-Modus:
Ctrl+x
DeleteChar
Löschen Sie das Zeichen unter dem Cursor.
- Windows-Modus:
Delete - Emacs-Modus:
Delete - Vi Einfügemodus:
Delete - Vi-Befehlsmodus:
<Delete>,<x>,<d,l>,<d,Spacebar>
DeleteCharOrExit
Löschen Sie das Zeichen unter dem Cursor, oder wenn die Zeile leer ist, beenden Sie den Vorgang.
- Emacs-Modus:
Ctrl+d
DeleteEndOfBuffer
Löscht am Ende des mehrstufigen Puffers.
- Vi-Befehlsmodus:
<d,G>
DeleteEndOfWord
Löschen bis zum Ende des Worts.
- Vi-Befehlsmodus:
<d,e>
DeleteLine (Löschen)
Löscht die aktuelle logische Zeile eines mehrzeiligen Puffers, wodurch rückgängig werden kann.
- Vi-Befehlsmodus:
<d,d>,<d,_>
DeleteLineToFirstChar
Löscht aus dem ersten nicht leeren Zeichen der aktuellen logischen Zeile in einem mehrzeiligen Puffer.
- Vi-Befehlsmodus:
<d,^>
LöschenNächsteZeilen
Löscht die aktuellen und nächsten logischen Zeilen in einem mehrteiligen Puffer.
- Vi-Befehlsmodus:
<d,j>
VorherigeZeilen löschen
Löscht die vorherigen angeforderten logischen Zeilen und die aktuelle logische Zeile in einem mehrzeiligen Puffer.
- Vi-Befehlsmodus:
<d,k>
DeleteRelativeLines
Löscht vom Anfang des Puffers zur aktuellen logischen Zeile in einem mehrzeiligen Puffer.
Wie bei den meisten Vi-Befehlen kann der Befehl <d,g,g> mit einem numerischen Argument vorangestellt werden, das eine absolute Zeilenzahl angibt, die zusammen mit der aktuellen Zeilennummer einen Zu löschenden Zeilenbereich bilden. Wenn nicht angegeben, wird das numerische Argument standardmäßig auf 1 festgelegt, das sich auf die erste logische Zeile in einem mehrzeiligen Puffer bezieht.
Die tatsächliche Anzahl von Zeilen, die aus der mehrzeiligen Zeile gelöscht werden sollen, wird als Differenz zwischen der aktuellen logischen Zeilennummer und dem angegebenen numerischen Argument berechnet, was somit negativ sein kann. Daher relativer Teil des Methodennamens.
- Vi-Befehlsmodus:
<d,g,g>
DeleteToEnd
Am Ende der Zeile löschen.
- Vi-Befehlsmodus:
<D>,<d,$>
Wort löschen
Löschen Sie das nächste Wort.
- Vi-Befehlsmodus:
<d,w>
Fall-Wort
Hinzugefügt in PSReadLine 2.3.0
Konvertieren Sie das nächste Wort in Kleinbuchstaben.
- Emacs-Modus:
Alt+l,Escape,l
ForwardDeleteInput
Wie KillLine - löscht Text vom Punkt bis zum Ende der Eingabe, aber nicht den gelöschten Text im Kill-Ring.
- Windows-Modus:
Ctrl+End - Vi Einfügemodus:
Ctrl+End - Vi-Befehlsmodus:
<Ctrl+End>
VorwärtsLöschenZeile
Löscht Text vom Punkt bis zum Ende der aktuellen logischen Zeile, legt den gelöschten Text jedoch nicht im Kill-Ring.
- Funktion ist ungebunden
EinfügenLinieOben
Oberhalb der aktuellen Zeile wird unabhängig davon, wo sich der Cursor in der aktuellen Zeile befindet, eine neue leere Zeile erstellt. Der Cursor wird an den Anfang der neuen Zeile verschoben.
- Windows-Modus:
Ctrl+Enter
EinfügenLinieUnten
Unterhalb der aktuellen Zeile wird unabhängig davon, wo sich der Cursor in der aktuellen Zeile befindet, eine neue leere Zeile erstellt. Der Cursor wird an den Anfang der neuen Zeile verschoben.
- Windows-Modus:
Shift+Ctrl+Enter
InvertCase
Umkehren Sie die Groß-/Kleinschreibung des aktuellen Zeichens, und wechseln Sie zum nächsten Zeichen.
- Vi-Befehlsmodus:
<~>
KillLine
Löschen Sie die Eingabe vom Cursor bis zum Ende der Eingabe. Der gelöschte Text wird im Kill-Ring platziert.
- Emacs-Modus:
Ctrl+k
KillRegion
Beenden Sie den Text zwischen dem Cursor und der Markierung.
- Funktion ist ungebunden.
KillWord
Löschen Sie die Eingabe vom Cursor bis zum Ende des aktuellen Worts. Wenn sich der Cursor zwischen Wörtern befindet, wird die Eingabe vom Cursor bis zum Ende des nächsten Worts gelöscht. Der gelöschte Text wird im Kill-Ring platziert.
- Windows-Modus:
Alt+d,Ctrl+Delete - Emacs-Modus:
Alt+d,Escape,d - Vi Einfügemodus:
Ctrl+Delete - Vi-Befehlsmodus:
<Ctrl+Delete>
Kleister
Fügen Sie Text aus der Systemablage ein.
- Windows-Modus:
Ctrl+v,Shift+Insert - Vi Einfügemodus:
Ctrl+v - Vi-Befehlsmodus:
<Ctrl+v>
Wichtig
Bei Verwendung der funktion Einfügen wird der gesamte Inhalt des Zwischenablagepuffers in den Eingabepuffer von PSReadLine eingefügt. Der Eingabepuffer wird dann an den PowerShell-Parser übergeben. Eingaben, die mit der der Konsolenanwendung eingefügt werden, Einfügemethode wird jeweils ein Zeichen in den Eingabepuffer kopiert. Der Eingabepuffer wird an den Parser übergeben, wenn ein Neuzeilenzeichen kopiert wird. Daher wird die Eingabe jeweils eine Zeile analysiert. Der Unterschied zwischen Einfügemethoden führt zu unterschiedlichen Ausführungsverhalten.
Einfügen nach
Fügen Sie die Zwischenablage hinter dem Cursor ein, und bewegen Sie den Cursor an das Ende des eingefügten Texts.
- Vi-Befehlsmodus:
<p>
EinfügenVor
Fügen Sie die Zwischenablage vor dem Cursor ein, und bewegen Sie den Cursor an das Ende des eingefügten Texts.
- Vi-Befehlsmodus:
<P>
PrependAndAccept
Stellen Sie ein "#" voran, und akzeptieren Sie die Zeile.
- Vi-Befehlsmodus:
<#>
Noch einmal machen
Rückgängigmachen eines Rückgängigmachens.
- Windows-Modus:
Ctrl+y - Vi Einfügemodus:
Ctrl+y - Vi-Befehlsmodus:
<Ctrl+y>
WiederholenLetzterBefehl
Wiederholen Sie die letzte Textänderung.
- Vi-Befehlsmodus:
<.>
ErsetzenChar
Ersetzen Sie das aktuelle Zeichen durch den nächsten eingegebenen Zeichensatz.
- Vi-Befehlsmodus:
<c,l>,<c,Spacebar>
ReplaceCharInPlace
Ersetzen Sie das aktuelle Zeichen durch nur ein Zeichen.
- Vi-Befehlsmodus:
<r>
RevertLine
Gibt alle Eingaben auf die aktuelle Eingabe zurück.
- Windows-Modus:
Escape - Emacs-Modus:
Alt+r,Escape,r
ShellBackwardKillWord
Löschen Sie die Eingabe vom Anfang des aktuellen Worts zum Cursor. Wenn sich der Cursor zwischen Wörtern befindet, wird die Eingabe vom Anfang des vorherigen Worts bis zum Cursor gelöscht. Der gelöschte Text wird im Kill-Ring platziert.
Funktion ist ungebunden.
ShellKillWord
Löschen Sie die Eingabe vom Cursor bis zum Ende des aktuellen Worts. Wenn sich der Cursor zwischen Wörtern befindet, wird die Eingabe vom Cursor bis zum Ende des nächsten Worts gelöscht. Der gelöschte Text wird im Kill-Ring platziert.
Funktion ist ungebunden.
Zeichen tauschen
Tauschen Sie das aktuelle Zeichen und das zeichen davor aus.
- Emacs-Modus:
Ctrl+t - Vi Einfügemodus:
Ctrl+t - Vi-Befehlsmodus:
<Ctrl+t>
Aufmachen
Rückgängigmachen einer vorherigen Bearbeitung.
- Windows-Modus:
Ctrl+z - Emacs-Modus:
Ctrl+_,Ctrl+x,Ctrl+u - Vi Einfügemodus:
Ctrl+z - Vi-Befehlsmodus:
<Ctrl+z>,<u>
Rückgängig machen
Alle vorherigen Bearbeitungen für Zeile rückgängigmachen.
- Vi-Befehlsmodus:
<U>
UnixWordRubout
Löschen Sie die Eingabe vom Anfang des aktuellen Worts zum Cursor. Wenn sich der Cursor zwischen Wörtern befindet, wird die Eingabe vom Anfang des vorherigen Worts bis zum Cursor gelöscht. Der gelöschte Text wird im Kill-Ring platziert.
- Emacs-Modus:
Ctrl+w
UpcaseWord
Hinzugefügt in PSReadLine 2.3.0
Konvertieren Sie das nächste Wort in Großbuchstaben.
- Emacs-Modus:
Alt+u,Escape,u
ValidateAndAcceptLine
Versuchen Sie, die aktuelle Eingabe auszuführen. Wenn die aktuelle Eingabe unvollständig ist (z. B. fehlt eine schließende Klammer, eckige Klammer oder Anführungszeichen), wird die Fortsetzungsaufforderung in der nächsten Zeile angezeigt, und PSReadLine wartet auf tasten, um die aktuelle Eingabe zu bearbeiten.
- Emacs-Modus:
Ctrl+m
ViAcceptLine
Akzeptieren Sie die Zeile, und wechseln Sie zum Einfügemodus.
- Vi-Befehlsmodus:
<Enter>
ViAcceptLineOrExit
Wie DeleteCharOrExit im Emacs-Modus, akzeptiert aber die Zeile, anstatt ein Zeichen zu löschen.
- Vi Einfügemodus:
Ctrl+d - Vi-Befehlsmodus:
<Ctrl+d>
ViAppendLine
Unterhalb der aktuellen Zeile wird eine neue Zeile eingefügt.
- Vi-Befehlsmodus:
<o>
ViBackwardDeleteGlob
Löscht das vorherige Wort, wobei nur Leerzeichen als Worttrennzeichen verwendet werden.
- Vi-Befehlsmodus:
<d,B>
ViRückwärtsGlob
Verschiebt den Cursor zurück zum Anfang des vorherigen Worts, wobei nur Leerzeichen als Trennzeichen verwendet werden.
- Vi-Befehlsmodus:
<B>
ViBackwardReplaceGlob
Löschen Sie zurück zum Anfang des vorherigen Worts, wie durch Leerzeichen getrennt, und geben Sie den Einfügemodus ein.
- Vi-Befehlsmodus:
<c,B>
ViBackwardReplaceLine
Ersetzt die Zeile links vom Cursor und den gesamten Weg zum Anfang.
- Vi-Befehlsmodus:
<c,0>
ViBackwardReplaceLineToFirstChar
Ersetzt die Zeile links vom Cursor und alle Zeichen bis zum Anfang der Zeile.
- Vi-Befehlsmodus:
<c,^>
ViBackwardReplaceWord
Ersetzen Sie das vorherige Wort.
- Vi-Befehlsmodus:
<c,B>
ViDeleteBrace
Suchen Sie die übereinstimmende Klammer, Klammer oder eckige Klammer, und löschen Sie alle Inhalte, einschließlich der geschweiften Klammer.
- Vi-Befehlsmodus:
<d,%>
ViDeleteEndOfGlob
Löschen bis zum Ende des Worts.
- Vi-Befehlsmodus:
<d,E>
ViDeleteGlob
Löschen Sie den nächsten Glob (durch Trennzeichen getrennte Leerzeichen).
- Vi-Befehlsmodus:
<d,W>
ViDeleteToBeforeChar
Löscht bis zu einem gegebenen Zeichen.
- Vi-Befehlsmodus:
<d,t>
ViDeleteToBeforeCharBackward
Löscht bis zu einem gegebenen Zeichen.
- Vi-Befehlsmodus:
<d,T>
ViDeleteToChar
Löscht bis zu einem gegebenen Zeichen.
- Vi-Befehlsmodus:
<d,f>
ViDeleteToCharBackward
Löscht rückwärts bis zu einem gegebenen Zeichen.
- Vi-Befehlsmodus:
<d,F>
ViInsertAtBeginninging
Wechseln Sie zum Einfügemodus, und positionieren Sie den Cursor am Anfang der Zeile.
- Vi-Befehlsmodus:
<I>
ViInsertAtEnd
Wechseln Sie zum Einfügemodus, und positionieren Sie den Cursor am Ende der Zeile.
- Vi-Befehlsmodus:
<A>
ViInsertLine
Oberhalb der aktuellen Zeile wird eine neue Zeile eingefügt.
- Vi-Befehlsmodus:
<O>
ViInsertWithAppend
Anfügen von der aktuellen Zeilenposition.
- Vi-Befehlsmodus:
<a>
ViInsertWithDelete
Löschen Sie das aktuelle Zeichen, und wechseln Sie zum Einfügemodus.
- Vi-Befehlsmodus:
<s>
ViJoinLines
Verknüpft die aktuelle Zeile und die nächste Zeile.
- Vi-Befehlsmodus:
<J>
ViReplaceBrace
Ersetzen Sie alle Zeichen zwischen dem aktuellen geschweiften Zeichen und dem entsprechenden Partner.
- Vi-Befehlsmodus:
<c,%>
ViReplaceEndOfGlob
Löschen Sie bis zum Ende des Worts, wie durch Leerzeichen getrennt, und geben Sie den Einfügemodus ein.
- Vi-Befehlsmodus:
<c,E>
ViReplaceEndOfWord
Löschen Sie am Ende des Worts, wie durch Leerzeichen und allgemeine Trennzeichen getrennt, und geben Sie den Einfügemodus ein.
- Vi-Befehlsmodus:
<c,E>
ViReplaceGlob
Löschen Sie am Anfang des nächsten Worts, wie durch Leerzeichen getrennt, und geben Sie den Einfügemodus ein.
- Vi-Befehlsmodus:
<c,W>
ViReplaceLine
Löschen Sie die gesamte Befehlszeile.
- Vi-Befehlsmodus:
<S>,<c,c>
ViReplaceToBeforeChar
Ersetzt bis zu einem gegebenen Zeichen.
- Vi-Befehlsmodus:
<c,t>
ViReplaceToBeforeCharBackward
Ersetzt bis zu einem gegebenen Zeichen.
- Vi-Befehlsmodus:
<c,T>
ViReplaceToChar
Löscht bis zu einem gegebenen Zeichen.
- Vi-Befehlsmodus:
<c,f>
ViReplaceToCharBackward
Ersetzt bis zu einem gegebenen Zeichen.
- Vi-Befehlsmodus:
<c,F>
ViReplaceToEnd
Ersetzen Sie die Zeichen von der Cursorposition bis zum Ende der Zeile.
- Vi-Befehlsmodus:
<c,$>,<C>
ViReplaceUntilEsc
Ersetzen Sie das aktuelle Zeichen, bis ein Escapezeichen eingegeben wird oder die Zeile akzeptiert wird.
- Vi-Befehlsmodus:
<r>
ViReplaceWord
Ersetzen Sie das aktuelle Wort.
- Vi-Befehlsmodus:
<c,W>
ViYankAnfangDerLinie
Yank vom Anfang des Puffers bis zum Cursor.
- Vi-Befehlsmodus:
<y,0>
ViYankEndOfGlob
Yank vom Cursor bis zum Ende der WORD(n).
- Vi-Befehlsmodus:
<y,E>
ViYankEndeVonWord
Yank vom Cursor bis zum Ende des Worts(n).
- Vi-Befehlsmodus:
<y,e>
ViYankLinks
Yank-Zeichen links vom Cursor.
- Vi-Befehlsmodus:
<y,h>
ViYankLine
Yank den gesamten Puffer.
- Vi-Befehlsmodus:
<y,y>
ViYankNächsterGlob
Yank vom Cursor bis zum Anfang der nächsten WORD(n).
- Vi-Befehlsmodus:
<y,W>
ViYankNächstesWort
Ziehen Sie das/die Wort(e) nach dem Cursor.
- Vi-Befehlsmodus:
<y,w>
ViYankPercent
Ziehen Sie zu/von der passenden Verstrebung.
- Vi-Befehlsmodus:
<y,%>
ViYankVorherigeGlob
Yank vom Anfang der WORD(n) bis zum Cursor.
- Vi-Befehlsmodus:
<y,B>
ViYankVorherigeWort
Ziehen Sie das/die Wort(e) vor den Cursor.
- Vi-Befehlsmodus:
<y,b>
ViYankRechts
Yank-Zeichen unter und rechts vom Cursor.
- Vi-Befehlsmodus:
<y,l>,<y,Spacebar>
ViYankToEndOfLine
Yank vom Cursor bis zum Ende des Puffers.
- Vi-Befehlsmodus:
<y,$>
ViYankToFirstChar
Yank vom ersten Nicht-Leerzeichen bis zum Cursor.
- Vi-Befehlsmodus:
<y,^>
Ami
Fügen Sie der Eingabe den zuletzt getöteten Text hinzu.
- Emacs-Modus:
Ctrl+y
YankLastArg
Yank das letzte Argument aus der vorherigen Verlaufszeile. Bei einem Argument verhält sich das erste Mal, wenn es aufgerufen wird, genau wie YankNthArg. Wenn sie mehrmals aufgerufen wird, durchläuft sie stattdessen den Verlauf, und arg legt die Richtung fest (negativ kehrt die Richtung um.)
- Windows-Modus:
Alt+. - Emacs-Modus:
Alt+.,Alt+_,Escape,.,Escape,_
YankNthArg
Yank das erste Argument (nach dem Befehl) aus der vorherigen Verlaufszeile. Mit einem Argument, yank the nth argument (starting from 0), if the argument is negative, start from the last argument.
- Emacs-Modus:
Ctrl+Alt+y,Escape,Ctrl+y
YankPop
Wenn der vorherige Vorgang Yank oder YankPop war, ersetzen Sie den zuvor yankierten Text durch den nächsten getöteten Text aus dem Kill-Ring.
- Emacs-Modus:
Alt+y,Escape,y
Vervollständigungsfunktionen
Vollständig
Versuchen Sie, die Fertigstellung des Texts auszuführen, der den Cursor umgibt. Wenn mehrere mögliche Vervollständigungen vorhanden sind, wird das längste eindeutige Präfix für den Abschluss verwendet. Wenn Sie versuchen, den längsten eindeutigen Abschluss abzuschließen, wird eine Liste der möglichen Fertigstellungen angezeigt.
- Emacs-Modus:
Tab
MenüKomplett
Versuchen Sie, die Fertigstellung des Texts auszuführen, der den Cursor umgibt. Wenn mehrere mögliche Vervollständigungen vorhanden sind, wird das längste eindeutige Präfix für den Abschluss verwendet. Wenn Sie versuchen, den längsten eindeutigen Abschluss abzuschließen, wird eine Liste der möglichen Fertigstellungen angezeigt.
- Windows-Modus:
Ctrl+@,Ctrl+Spacebar - Emacs-Modus:
Ctrl+Spacebar
Mögliche Fertigstellungen
Zeigt die Liste der möglichen Fertigstellungen an.
- Emacs-Modus:
Alt+= - Vi Einfügemodus:
Ctrl+Spacebar - Vi-Befehlsmodus:
<Ctrl+Spacebar>
TabCompleteWeiter
Versuchen Sie, den Text, der den Cursor umgibt, mit dem nächsten verfügbaren Abschluss abzuschließen.
- Windows-Modus:
Tab - Vi-Befehlsmodus:
<Tab>
TabCompletePrevious
Versuchen Sie, den Text, der den Cursor umgibt, mit dem vorherigen verfügbaren Abschluss abzuschließen.
- Windows-Modus:
Shift+Tab - Vi-Befehlsmodus:
<Shift+Tab>
ViTabCompleteWeiter
Beendet die aktuelle Bearbeitungsgruppe bei Bedarf und ruft TabCompleteNext auf.
- Vi Einfügemodus:
Tab
ViTabCompleteZurück
Beendet die aktuelle Bearbeitungsgruppe, falls erforderlich, und ruft TabCompletePrevious auf.
- Vi Einfügemodus:
Shift+Tab
Cursorbewegungsfunktionen
RückwärtsChar
Bewegen Sie den Cursor um ein Zeichen nach links. Dies kann den Cursor in die vorherige Zeile mit mehrzeiliger Eingabe verschieben.
- Windows-Modus:
LeftArrow - Emacs-Modus:
LeftArrow,Ctrl+b
RückwärtsWort
Bewegen Sie den Cursor zurück zum Anfang des aktuellen Worts oder zwischen Wörtern, dem Anfang des vorherigen Worts. Word-Grenzen werden durch einen konfigurierbaren Satz von Zeichen definiert.
- Windows-Modus:
Ctrl+LeftArrow - Emacs-Modus:
Alt+b,Escape,b - Vi Einfügemodus:
Ctrl+LeftArrow - Vi-Befehlsmodus:
<Ctrl+LeftArrow>
Die Zeichen, die Wortgrenzen definieren, werden in der WordDelimiters-eigenschaft des PSConsoleReadLineOptions--Objekts konfiguriert. Informationen zum Anzeigen oder Ändern der WordDelimiters--Eigenschaft finden Sie unter Get-PSReadLineOption und Set-PSReadLineOption-.
AnfangDerLinie
Wenn die Eingabe über mehrere Zeilen verfügt, wechseln Sie zum Anfang der aktuellen Zeile oder wenn sie bereits am Anfang der Zeile stehen, wechseln Sie zum Anfang der Eingabe. Wenn die Eingabe über eine einzelne Zeile verfügt, wechseln Sie zum Anfang der Eingabe.
- Windows-Modus:
Home - Emacs-Modus:
Home,Ctrl+a - Vi Einfügemodus:
Home - Vi-Befehlsmodus:
<Home>
EndeOfLine
Wenn die Eingabe mehrere Zeilen enthält, wechseln Sie zum Ende der aktuellen Zeile oder wenn sie sich bereits am Ende der Zeile befindet, wechseln Sie zum Ende der Eingabe. Wenn die Eingabe über eine einzelne Zeile verfügt, wechseln Sie zum Ende der Eingabe.
- Windows-Modus:
End - Emacs-Modus:
End,Ctrl+e - Vi Einfügemodus:
End
ForwardChar (VorwärtsChar)
Bewegen Sie den Cursor um ein Zeichen nach rechts. Dadurch wird der Cursor möglicherweise in die nächste Zeile mit mehrzeiliger Eingabe verschoben.
- Windows-Modus:
RightArrow - Emacs-Modus:
RightArrow,Ctrl+f
Vorwärtswort
Bewegen Sie den Cursor an das Ende des aktuellen Worts oder zwischen Wörtern bis zum Ende des nächsten Worts. Word-Grenzen werden durch einen konfigurierbaren Satz von Zeichen definiert.
- Emacs-Modus:
Alt+f,Escape,f
Die Zeichen, die Wortgrenzen definieren, werden in der WordDelimiters-eigenschaft des PSConsoleReadLineOptions--Objekts konfiguriert. Informationen zum Anzeigen oder Ändern der WordDelimiters--Eigenschaft finden Sie unter Get-PSReadLineOption und Set-PSReadLineOption-.
GotoBrace
Wechseln Sie zur übereinstimmenden Klammer, Klammer oder eckigen Klammer.
- Windows-Modus:
Ctrl+] - Vi Einfügemodus:
Ctrl+] - Vi-Befehlsmodus:
<Ctrl+]>
Gehe zuSpalte
Wechseln zur spalte, die durch Arg angegeben ist.
- Vi-Befehlsmodus:
<|>
Gehe zuFirstNonBlankOfLine
Bewegen Sie den Cursor auf das erste nicht leere Zeichen in der Zeile.
- Vi-Befehlsmodus:
<^>,<_>
VerschiebenZuEndeDerLinie
Bewegen Sie den Cursor an das Ende der Eingabe.
- Vi-Befehlsmodus:
<End>,<$>
MoveToFirstLine
Wechseln Sie zur ersten Zeile in einem mehrzeiligen Befehl.
- Vi-Befehlsmodus:
<g,g>
MoveToLastLine
Wechseln Sie zur letzten Zeile in einem mehrzeiligen Befehl.
- Vi-Befehlsmodus:
<G>
NächsteLinie
Bewegen Sie den Cursor in die nächste Zeile.
- Funktion ist ungebunden.
NächstesWort
Bewegen Sie den Cursor nach vorne an den Anfang des nächsten Worts. Word-Grenzen werden durch einen konfigurierbaren Satz von Zeichen definiert.
- Windows-Modus:
Ctrl+RightArrow - Vi Einfügemodus:
Ctrl+RightArrow - Vi-Befehlsmodus:
<Ctrl+RightArrow>
Die Zeichen, die Wortgrenzen definieren, werden in der WordDelimiters-eigenschaft des PSConsoleReadLineOptions--Objekts konfiguriert. Informationen zum Anzeigen oder Ändern der WordDelimiters--Eigenschaft finden Sie unter Get-PSReadLineOption und Set-PSReadLineOption-.
NächstesWortEnde
Bewegen Sie den Cursor an das Ende des aktuellen Worts oder zwischen Wörtern bis zum Ende des nächsten Worts. Word-Grenzen werden durch einen konfigurierbaren Satz von Zeichen definiert.
- Vi-Befehlsmodus:
<e>
Die Zeichen, die Wortgrenzen definieren, werden in der WordDelimiters-eigenschaft des PSConsoleReadLineOptions--Objekts konfiguriert. Informationen zum Anzeigen oder Ändern der WordDelimiters--Eigenschaft finden Sie unter Get-PSReadLineOption und Set-PSReadLineOption-.
PreviousLine
Bewegen Sie den Cursor in die vorherige Zeile.
- Funktion ist ungebunden.
ShellBackwardWord
Bewegen Sie den Cursor zurück zum Anfang des aktuellen Worts oder zwischen Wörtern, dem Anfang des vorherigen Worts. Word-Grenzen werden durch PowerShell-Token definiert.
- Funktion ist ungebunden.
ShellForwardWord
Bewegen Sie den Cursor nach vorne an den Anfang des nächsten Worts. Word-Grenzen werden durch PowerShell-Token definiert.
- Funktion ist ungebunden.
ShellNextWord
Bewegen Sie den Cursor an das Ende des aktuellen Worts oder zwischen Wörtern bis zum Ende des nächsten Worts. Word-Grenzen werden durch PowerShell-Token definiert.
- Funktion ist ungebunden.
ViBackwardChar
Bewegen Sie den Cursor um ein Zeichen nach links im Vi-Bearbeitungsmodus. Dies kann den Cursor in die vorherige Zeile mit mehrzeiliger Eingabe verschieben.
- Vi Einfügemodus:
LeftArrow - Vi-Befehlsmodus:
<LeftArrow>,<Backspace>,<h>
ViRückwärtsWort
Bewegen Sie den Cursor zurück zum Anfang des aktuellen Worts oder zwischen Wörtern, dem Anfang des vorherigen Worts. Word-Grenzen werden durch einen konfigurierbaren Satz von Zeichen definiert.
- Vi-Befehlsmodus:
<b>
Die Zeichen, die Wortgrenzen definieren, werden in der WordDelimiters-eigenschaft des PSConsoleReadLineOptions--Objekts konfiguriert. Informationen zum Anzeigen oder Ändern der WordDelimiters--Eigenschaft finden Sie unter Get-PSReadLineOption und Set-PSReadLineOption-.
ViEndOfGlob
Bewegen Sie den Cursor an das Ende dieses Worts, wie durch Leerzeichen getrennt.
- Vi-Befehlsmodus:
<E>
ViEndOfPreviousGlob
Wechselt zum Ende des vorherigen Worts, wobei nur Leerzeichen als Worttrennzeichen verwendet werden.
- Funktion ist ungebunden.
ViForwardChar
Bewegen Sie den Cursor um ein Zeichen nach rechts im Vi-Bearbeitungsmodus. Dadurch wird der Cursor möglicherweise in die nächste Zeile mit mehrzeiliger Eingabe verschoben.
- Vi Einfügemodus:
RightArrow - Vi-Befehlsmodus:
<RightArrow>,<Spacebar>,<l>
ViGotoBrace
Ähnlich wie GotoBrace, ist aber zeichenbasiert statt tokenbasiert.
- Vi-Befehlsmodus:
<%>
ViNextGlob
Wechselt zum nächsten Wort, wobei nur Leerzeichen als Worttrennzeichen verwendet werden.
- Vi-Befehlsmodus:
<W>
ViNextWord
Bewegen Sie den Cursor nach vorne an den Anfang des nächsten Worts. Word-Grenzen werden durch einen konfigurierbaren Satz von Zeichen definiert.
- Vi-Befehlsmodus:
<w>
Die Zeichen, die Wortgrenzen definieren, werden in der WordDelimiters-eigenschaft des PSConsoleReadLineOptions--Objekts konfiguriert. Informationen zum Anzeigen oder Ändern der WordDelimiters--Eigenschaft finden Sie unter Get-PSReadLineOption und Set-PSReadLineOption-.
Verlaufsfunktionen
AnfangDerGeschichte
Wechseln zum ersten Element im Verlauf.
- Emacs-Modus:
Alt+<
Klare Geschichte
Löscht den Verlauf in PSReadLine. Dies wirkt sich nicht auf den PowerShell-Verlauf aus.
- Windows-Modus:
Alt+F7
EndeDerGeschichte
Wechseln zum letzten Element (die aktuelle Eingabe) im Verlauf.
- Emacs-Modus:
Alt+>
ForwardSearchGeschichte
Führen Sie eine inkrementelle Vorwärtssuche durch den Verlauf durch.
- Windows-Modus:
Ctrl+s - Emacs-Modus:
Ctrl+s - Vi Einfügemodus:
Ctrl+s - Vi-Befehlsmodus:
<Ctrl+s>
GeschichteSuchenRückwärts
Ersetzen Sie die aktuelle Eingabe durch das "vorherige" Element aus dem PSReadLine-Verlauf, der den Zeichen zwischen dem Start und der Eingabe und dem Cursor entspricht.
- Windows-Modus:
F8
GeschichteSearchForward
Ersetzen Sie die aktuelle Eingabe durch das "nächste" Element aus dem PSReadLine-Verlauf, das den Zeichen zwischen dem Start und der Eingabe und dem Cursor entspricht.
- Windows-Modus:
Shift+F8
NächsteGeschichte
Ersetzen Sie die aktuelle Eingabe durch das "nächste" Element aus dem PSReadLine-Verlauf.
- Windows-Modus:
DownArrow - Emacs-Modus:
DownArrow,Ctrl+n - Vi Einfügemodus:
DownArrow - Vi-Befehlsmodus:
<DownArrow>,<j>,<+>
PreviousGeschichte
Ersetzen Sie die aktuelle Eingabe durch das "vorherige" Element aus dem PSReadLine-Verlauf.
- Windows-Modus:
UpArrow - Emacs-Modus:
UpArrow,Ctrl+p - Vi Einfügemodus:
UpArrow - Vi-Befehlsmodus:
<UpArrow>,<k>,<->
ReverseSearchGeschichte
Führen Sie eine inkrementelle Rückwärtssuche durch den Verlauf durch.
- Windows-Modus:
Ctrl+r - Emacs-Modus:
Ctrl+r - Vi Einfügemodus:
Ctrl+r - Vi-Befehlsmodus:
<Ctrl+r>
ViSearchHistoryBackward
Fordert eine Suchzeichenfolge auf und initiiert die Suche nach AcceptLine.
- Vi-Befehlsmodus:
</>
Verschiedene Funktionen
CaptureScreen (Erfassen)
Starten Sie die interaktive Bildschirmaufnahme – Pfeile nach oben/unten markieren Zeilen, geben Sie markierten Text in die Zwischenablage als Text und HTML ein.
- Funktion ist ungebunden.
Bildschirm löschen
Löschen Sie den Bildschirm, und zeichnen Sie die aktuelle Linie am oberen Rand des Bildschirms.
- Windows-Modus:
Ctrl+l - Emacs-Modus:
Ctrl+l - Vi Einfügemodus:
Ctrl+l - Vi-Befehlsmodus:
<Ctrl+l>
Zahlenargument
Beginnen Sie ein neues Ziffernargument, das an andere Funktionen übergeben werden soll. Sie können dies als Multiplikator für die nächste Funktion verwenden, die von einer Tastepress aufgerufen wird. Wenn Sie z. B. <Alt+1><Alt+0> drücken, wird das Ziffernargument Wert auf 10 festgelegt. Wenn Sie dann die #-Taste drücken, werden 10 # Zeichen (##########) an die Eingabezeile gesendet.
Ebenso können Sie dies mit anderen Vorgängen wie <Delete> oder Left-Arrowverwenden.
- Windows-Modus:
Alt+0,Alt+1,Alt+2,Alt+3,Alt+4,Alt+5,Alt+6,Alt+7,Alt+8,Alt+9,Alt+- - Emacs-Modus:
Alt+0,Alt+1,Alt+2,Alt+3,Alt+4,Alt+5,Alt+6,Alt+7,Alt+8,Alt+9,Alt+- - Vi-Befehlsmodus:
<0>,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>
InvokePrompt (Eingabeaufforderung)
Löscht die aktuelle Eingabeaufforderung und ruft die Eingabeaufforderungsfunktion auf, um die Eingabeaufforderung erneut zu anzeigen. Nützlich für benutzerdefinierte Schlüsselhandler, die den Zustand ändern. Ändern Sie beispielsweise das aktuelle Verzeichnis.
- Funktion ist ungebunden.
ScrollDisplayNach unten
Scrollen Sie auf einem Bildschirm nach unten.
- Windows-Modus:
PageDown - Emacs-Modus:
PageDown
ScrollDisplayDownLine
Scrollen Sie in der Anzeige um eine Zeile nach unten.
- Windows-Modus:
Ctrl+PageDown - Emacs-Modus:
Ctrl+PageDown
ScrollDisplayToCursor
Scrollen Sie die Anzeige zum Cursor.
- Emacs-Modus:
Ctrl+End
ScrollDisplayNach oben
Scrollen Sie die Anzeige nach oben.
- Emacs-Modus:
Ctrl+Home
ScrollDisplayNach oben
Scrollen Sie in der Anzeige um einen Bildschirm nach oben.
- Windows-Modus:
PageUp - Emacs-Modus:
PageUp
ScrollDisplayUpLine
Scrollen Sie in der Anzeige um eine Zeile nach oben.
- Windows-Modus:
Ctrl+PageUp - Emacs-Modus:
Ctrl+PageUp
ShowCommandHelp
Stellt eine Ansicht der vollständigen Cmdlet-Hilfe bereit. Wenn sich der Cursor am Ende eines vollständig erweiterten Parameters befindet, wird durch Drücken der <F1> Die Anzeige der Hilfe an der Position dieses Parameters positioniert.
Die Hilfe wird in einem alternativen Bildschirmpuffer mit einem Pager aus Microsoft.PowerShell.Pagerangezeigt. Wenn Sie den Pager verlassen, werden Sie auf dem ursprünglichen Bildschirm an die ursprüngliche Cursorposition zurückgesendet. Dieser Pager funktioniert nur in modernen Terminalanwendungen wie Windows Terminal.
- Windows-Modus:
F1 - Emacs-Modus:
F1 - Vi Einfügemodus:
F1 - Vi-Befehlsmodus:
<F1>
ShowKeyBindings
Alle gebundenen Tasten anzeigen.
- Windows-Modus:
Ctrl+Alt+? - Emacs-Modus:
Ctrl+Alt+? - Vi Einfügemodus:
Ctrl+Alt+?
ShowParameterHilfe
Stellt dynamische Hilfe für Parameter bereit, indem sie unterhalb der aktuellen Befehlszeile wie MenuCompleteangezeigt wird. Der Cursor muss am Ende des vollständig erweiterten Parameternamens stehen, wenn Sie die taste <Alt+h> drücken.
- Windows-Modus:
Alt+h - Emacs-Modus:
Alt+h - Vi Einfügemodus:
Alt+h - Vi-Befehlsmodus:
<Alt+h>
ViCommandMode
Schalten Sie den aktuellen Betriebsmodus von Vi-Insert auf Vi-Command um.
- Vi Einfügemodus:
Escape
ViDigitArgumentInChord
Beginnen Sie ein neues Ziffernargument, um an andere Funktionen zu übergeben, während sie in einem der Vi-Akkords enthalten sind.
- Funktion ist ungebunden.
ViEditVisuell
Bearbeiten Sie die Befehlszeile in einem text-Editor, der durch $env:EDITOR oder $env:VISUALangegeben wird.
- Emacs-Modus:
Ctrl+x,Ctrl+e - Vi-Befehlsmodus:
<v>
ViExit
Beendet die Shell.
- Funktion ist ungebunden.
ViInsertMode
Wechseln zum Einfügemodus.
- Vi-Befehlsmodus:
<i>
WhatIsKey
Lesen Sie eine Taste, und teilen Sie mir mit, an welche Taste der Schlüssel gebunden ist.
- Windows-Modus:
Alt+? - Emacs-Modus:
Alt+?
Vorhersagefunktionen
AkzeptierenNächsterVorschlagWort
Annehmen des nächsten Worts des Inline- oder ausgewählten Vorschlags
- Funktion ist ungebunden.
AcceptSuggestion (Vorschlag)
Wenn Sie InlineView als Ansichtsformat für die Vorhersage verwenden, akzeptieren Sie den aktuellen Inlinevorschlag.
- Funktion ist ungebunden.
NächsterVorschlag
Wenn Sie ListView als Ansichtsformat für die Vorhersage verwenden, navigieren Sie zum nächsten Vorschlag in der Liste.
- Funktion ist ungebunden.
VorherigeVorschlag
Wenn Sie ListView als Ansichtsformat für die Vorhersage verwenden, navigieren Sie zum vorherigen Vorschlag in der Liste.
- Funktion ist ungebunden.
ShowFullPredictionTooltip
Zeigen Sie die QuickInfo des aktuell ausgewählten Listenelements in der Vollansicht an.
- Windows-Modus:
F4 - Emacs-Modus:
F4 - Vi Einfügemodus:
F4
SwitchPredictionView (SwitchPredictionView)
Ändern Sie das Ansichtsformat für die Vorhersage zwischen InlineView und ListView.
- Windows-Modus:
F2 - Emacs-Modus:
F2 - Vi Einfügemodus:
F2
Suchfunktionen
Charaktersuche
Lesen Sie ein Zeichen, und suchen Sie vorwärts nach dem nächsten Vorkommen dieses Zeichens. Wenn ein Argument angegeben ist, suchen Sie vorwärts (oder rückwärts, wenn negativ) für das n. Vorkommen.
- Windows-Modus:
F3 - Emacs-Modus:
Ctrl+] - Vi Einfügemodus:
F3 - Vi-Befehlsmodus:
<F3>
ZeichenSucheRückwärts
Lesen Sie ein Zeichen, und suchen Sie rückwärts nach dem nächsten Vorkommen dieses Zeichens. Wenn ein Argument angegeben ist, suchen Sie rückwärts (oder vorwärts, wenn negativ) nach dem n. Vorkommen.
- Windows-Modus:
Shift+F3 - Emacs-Modus:
Ctrl+Alt+] - Vi Einfügemodus:
Shift+F3 - Vi-Befehlsmodus:
<Shift+F3>
RepeatLastCharSearch
Wiederholen Sie die letzte aufgezeichnete Zeichensuche.
- Vi-Befehlsmodus:
<;>
RepeatLastCharSearchRückwärts
Wiederholen Sie die letzte aufgezeichnete Zeichensuche, aber in entgegengesetzter Richtung.
- Vi-Befehlsmodus:
<,>
WiederholenSuchen
Wiederholen Sie die letzte Suche in dieselbe Richtung wie zuvor.
- Vi-Befehlsmodus:
<n>
WiederholenSuchenRückwärts
Wiederholen Sie die letzte Suche in dieselbe Richtung wie zuvor.
- Vi-Befehlsmodus:
<N>
SearchChar
Lesen Sie das nächste Zeichen, und suchen Sie es nach vorne.
- Vi-Befehlsmodus:
<f>
SearchCharBackward
Lesen Sie das nächste Zeichen, und suchen Sie es dann nach hinten.
- Vi-Befehlsmodus:
<F>
SearchCharBackwardWithBackoff
Lesen Sie das nächste Zeichen, und suchen Sie es dann nach hinten, und kehren Sie dann zu einem Zeichen zurück.
- Vi-Befehlsmodus:
<T>
SearchCharWithBackoff
Lesen Sie das nächste Zeichen, und suchen Sie es nach vorne, und kehren Sie dann zu einem Zeichen zurück.
- Vi-Befehlsmodus:
<t>
SearchForward (Englisch)
Fordert eine Suchzeichenfolge auf und initiiert die Suche nach AcceptLine.
- Vi-Befehlsmodus:
<?>
Auswahlfunktionen
ExchangePointAndMark
Der Cursor wird an der Position der Markierung platziert, und die Markierung wird an die Position des Cursors verschoben.
- Emacs-Modus:
Ctrl+x,Ctrl+x
Alles auswählen
Markieren Sie die gesamte Zeile.
- Windows-Modus:
Ctrl+a
SelectBackwardChar
Passen Sie die aktuelle Auswahl an, um das vorherige Zeichen einzuschließen.
- Windows-Modus:
Shift+LeftArrow - Emacs-Modus:
Shift+LeftArrow
AuswählenRückwärtsLinie
Passen Sie die aktuelle Auswahl an, um sie vom Cursor an den Anfang der Zeile einzuschließen.
- Windows-Modus:
Shift+Home - Emacs-Modus:
Shift+Home
AuswählenRückwärtsWort
Passen Sie die aktuelle Auswahl an, um das vorherige Wort einzuschließen.
- Windows-Modus:
Shift+Ctrl+LeftArrow - Emacs-Modus:
Alt+B
AuswahlBefehlArgument
Treffen Sie die visuelle Auswahl der Befehlsargumente. Die Auswahl von Argumenten liegt innerhalb eines Skriptblocks. Basierend auf der Cursorposition durchsucht er den innersten Skriptblock in den äußersten Skriptblock und stoppt, wenn argumente in einem Skriptblockbereich gefunden werden.
Diese Funktion berücksichtigt DigitArgument. Es behandelt die positiven oder negativen Argumentwerte als Vorwärts- oder Rückwärtsversatz vom aktuell ausgewählten Argument oder von der aktuellen Cursorposition, wenn kein Argument ausgewählt ist.
- Windows-Modus:
Alt+a - Emacs-Modus:
Alt+a
SelectForwardChar
Passen Sie die aktuelle Auswahl an, um das nächste Zeichen einzuschließen.
- Windows-Modus:
Shift+RightArrow - Emacs-Modus:
Shift+RightArrow
AuswählenForwardWord
Passen Sie die aktuelle Auswahl an, um das nächste Wort mithilfe von ForwardWord einzuschließen.
- Emacs-Modus:
Alt+F
Linie auswählen
Passen Sie die aktuelle Auswahl an, um sie vom Cursor bis zum Ende der Zeile einzuschließen.
- Windows-Modus:
Shift+End - Emacs-Modus:
Shift+End
AuswählenNächstesWort
Passen Sie die aktuelle Auswahl an, um das nächste Wort einzuschließen.
- Windows-Modus:
Shift+Ctrl+RightArrow
SelectShellBackwardWord
Passen Sie die aktuelle Auswahl an, um das vorherige Wort mithilfe von ShellBackwardWord einzuschließen.
- Funktion ist ungebunden.
AuswählenShellForwardWord
Passen Sie die aktuelle Auswahl an, um das nächste Wort mithilfe von ShellForwardWord einzuschließen.
- Funktion ist ungebunden.
SelectShellNextWord
Passen Sie die aktuelle Auswahl an, um das nächste Wort mithilfe von ShellNextWord einzuschließen.
- Funktion ist ungebunden.
Markieren
Markieren Sie die aktuelle Position des Cursors für die Verwendung in einem nachfolgenden Bearbeitungsbefehl.
- Emacs-Modus:
Ctrl+@
Benutzerdefinierte Schlüsselbindungsunterstützungs-APIs
Die folgenden Funktionen sind in Microsoft.PowerShell.PSConsoleReadLine öffentlich, können aber nicht direkt an einen Schlüssel gebunden werden. Die meisten sind bei benutzerdefinierten Schlüsselbindungen nützlich.
void AddToHistory(string command)
Fügen Sie dem Verlauf eine Befehlszeile hinzu, ohne sie auszuführen.
void ClearKillRing()
Löschen Sie den Kill-Ring. Dies wird hauptsächlich für Tests verwendet.
void Delete(int start, int length)
Löschen von Längenzeichen von Anfang an. Dieser Vorgang unterstützt Rückgängig/Wiederholen.
void Ding()
Führen Sie die Ding-Aktion basierend auf der Benutzereinstellung aus.
void GetBufferState([ref] string input, [ref] int cursor)
void GetBufferState([ref] Ast ast, [ref] Token[] tokens,
[ref] ParseError[] parseErrors, [ref] int cursor)
Diese beiden Funktionen rufen nützliche Informationen zum aktuellen Zustand des Eingabepuffers ab. Der erste wird häufiger für einfache Fälle verwendet. Die zweite wird verwendet, wenn Ihre Bindung mit dem Ast etwas fortgeschrittener macht.
IEnumerable[Microsoft.PowerShell.KeyHandler]
GetKeyHandlers(bool includeBound, bool includeUnbound)
IEnumerable[Microsoft.PowerShell.KeyHandler]
GetKeyHandlers(string[] Chord)
Diese beiden Funktionen werden von Get-PSReadLineKeyHandlerverwendet. Der erste wird verwendet, um alle Tastenbindungen abzurufen. Die zweite wird verwendet, um bestimmte Tastenbindungen abzurufen.
Microsoft.PowerShell.PSConsoleReadLineOptions GetOptions()
Diese Funktion wird von Get-PSReadLineOption verwendet und ist wahrscheinlich nicht zu nützlich in einer benutzerdefinierten Schlüsselbindung.
void GetSelectionState([ref] int start, [ref] int length)
Wenn in der Befehlszeile keine Auswahl vorhanden ist, gibt die Funktion -1 sowohl in der Start- als auch in der Länge zurück. Wenn in der Befehlszeile eine Auswahl vorhanden ist, wird der Start und die Länge der Auswahl zurückgegeben.
void Insert(char c)
void Insert(string s)
Fügen Sie am Cursor ein Zeichen oder eine Zeichenfolge ein. Dieser Vorgang unterstützt Rückgängig/Wiederholen.
string ReadLine(runspace remoteRunspace,
System.Management.Automation.EngineIntrinsics engineIntrinsics)
Dies ist der Haupteinstiegspunkt zu PSReadLine. Rekursion wird nicht unterstützt. Dies ist daher in einer benutzerdefinierten Schlüsselbindung nicht hilfreich.
void RemoveKeyHandler(string[] key)
Diese Funktion wird von Remove-PSReadLineKeyHandler verwendet und ist wahrscheinlich nicht zu nützlich in einer benutzerdefinierten Schlüsselbindung.
void Replace(int start, int length, string replacement)
Ersetzen Sie einige Eingaben. Dieser Vorgang unterstützt Rückgängig/Wiederholen. Dies wird gegenüber "Löschen" bevorzugt, gefolgt von "Einfügen", da sie als einzelne Aktion für "Rückgängig" behandelt wird.
void SetCursorPosition(int cursor)
Bewegen Sie den Cursor an den angegebenen Offset. Die Cursorbewegung wird nicht für "Rückgängig" nachverfolgt.
void SetOptions(Microsoft.PowerShell.SetPSReadLineOption options)
Diese Funktion ist eine Hilfsmethode, die vom Cmdlet Set-PSReadLineOptionverwendet wird, kann jedoch für eine benutzerdefinierte Schlüsselbindung nützlich sein, die eine Einstellung vorübergehend ändern möchte.
bool TryGetArgAsInt(System.Object arg, [ref] int numericArg,
int defaultNumericArg)
Diese Hilfsmethode wird für benutzerdefinierte Bindungen verwendet, die DigitArgument berücksichtigen. Ein typischer Anruf sieht wie folgt aus:
[int]$numericArg = 0
[Microsoft.PowerShell.PSConsoleReadLine]::TryGetArgAsInt($arg,
[ref]$numericArg, 1)
Notizen
Verhalten des OnIdle-Ereignisses
Wenn PSReadLine verwendet wird, wird das OnIdle--Ereignis ausgelöst, wenn eine Zeitüberschreitung von
ReadKey()auftritt (ohne Eingabe in 300 ms). Das Ereignis könnte signalisiert werden, während sich der Benutzer in der Mitte der Bearbeitung einer Befehlszeile befindet, z. B. wenn der Benutzer Hilfe liest, um zu entscheiden, welcher Parameter verwendet werden soll.Ab PSReadLine 2.2.0-beta4 OnIdle Verhalten geändert, um das Ereignis nur zu signalisieren, wenn ein
ReadKey()Timeout vorhanden ist und der aktuelle Bearbeitungspuffer leer ist.