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.
PSReadLine 2.1.0 hat das Predictive IntelliSense-Feature eingeführt. Predictive IntelliSense bietet Vorschläge für vollständige Befehle basierend auf Elementen aus Ihrem PSReadLine-Verlauf . PSReadLine 2.2.2 erweitert die Leistungsfähigkeit von Predictive IntelliSense durch Hinzufügen von Unterstützung für Plug-In-Module, die erweiterte Logik verwenden, um Vorschläge für vollständige Befehle bereitzustellen. Die neueste Version, PSReadLine 2.2.6, aktiviert standardmäßig Vorhersagen.
Verwenden von Predictive IntelliSense
Wenn Predictive IntelliSense aktiviert ist, wird der Vorhersagevorschlag nach dem Cursor des Benutzers als farbiger Text angezeigt. Die Vorschläge von Predictive IntelliSense helfen neuen und erfahrenen Benutzern von PowerShell, basierend auf übereinstimmenden Vorhersagen, vollständige Befehle zu entdecken, zu bearbeiten und auszuführen. Vorschläge können aus dem Verlauf des Benutzers und zusätzlichen domänenspezifischen Plug-Ins stammen.
Die vorherigen Bilder zeigen den Standardwert InlineView
des Vorschlags. Durch Drücken der NACH-RECHTS-TASTE wird ein Inlinevorschlag akzeptiert. Nachdem Sie den Vorschlag angenommen haben, können Sie die Befehlszeile bearbeiten, bevor Sie die EINGABETASTE drücken, um den Befehl auszuführen.
PSReadLine bietet auch eine ListView
Präsentation der Vorschläge.
In der Listenansicht können Sie mithilfe der Pfeiltasten durch die verfügbaren Vorschläge scrollen. Die Listenansicht zeigt auch die Quelle der Vorhersage an.
PSReadLine ist standardmäßig auf InlineView
. Sie können zwischen InlineView
und ListView
durch Drücken der F2-TASTE wechseln. Sie können auch den PredictionViewStyle-ParameterSet-PSReadLineOption
verwenden, um die Ansicht zu ändern.
Verwalten von Predictive IntelliSense
Um Predictive IntelliSense zu verwenden, müssen Sie eine neuere Version von PSReadLine installiert haben. Um optimale Ergebnisse zu erzielen, installieren Sie die neueste Version des Moduls.
So installieren Sie PSReadLine mit PowerShellGet:
Install-Module -Name PSReadLine
Oder installieren Sie das neue PowerShellGet v3-Modul :
Install-PSResource -Name PSReadLine
PSReadLine kann in Windows PowerShell 5.1 oder in PowerShell 7 oder höher installiert werden. Um Vorhersage-Plug-Ins zu verwenden, müssen Sie PowerShell 7.2 oder höher nutzen. Windows PowerShell 5.1 kann den verlaufsbasierten Prädiktor verwenden.
In PSReadLine 2.2.6 ist Predictive IntelliSense standardmäßig abhängig von den folgenden Bedingungen aktiviert:
- Wenn Virtual Terminal (VT) unterstützt und PSReadLine in PowerShell 7.2 oder höher ausgeführt wird, wird PredictionSource auf
HistoryAndPlugin
eingestellt. - Wenn VT unterstützt wird und PSReadLine in PowerShell ausgeführt wird, die älter als 7.2 ist, wird PredictionSource auf
History
eingestellt. - Wenn VT nicht unterstützt wird, wird PredictionSource auf
None
gesetzt.
Verwenden Sie den folgenden Befehl, um die aktuelle Einstellung anzuzeigen:
Get-PSReadLineOption | Select-Object -Property PredictionSource
Sie können die Vorhersagequelle mithilfe des Set-PSReadLineOption
Cmdlets mit dem Parameter "PredictionSource " ändern. Die PredictionSource kann auf Folgendes festgelegt werden:
None
History
Plugin
HistoryAndPlugin
Hinweis
Verlaufsbasierte Prognosen werden aus dem von PSReadLine gespeicherten Verlauf erstellt. Dieser Verlauf ist umfassender als der sitzungsbasierte Verlauf, den Sie mit Get-History
sehen können. Weitere Informationen finden Sie im Abschnitt "Befehlsverlauf " von about_PSReadLine.
Festlegen der Vorhersagefarbe
Standardmäßig werden Vorhersagen in hellgrauem Text in derselben Zeile angezeigt, die der Benutzer eingibt. Um Barrierefreiheitsanforderungen zu unterstützen, können Sie die Vorhersagefarbe anpassen. Farben werden mithilfe von ANSI-Escapesequenzen definiert. Sie können $PSStyle
verwenden, um ANSI-Escapesequenzen zu verfassen.
Set-PSReadLineOption -Colors @{ InlinePrediction = $PSStyle.Background.Blue }
Sie können auch Ihre eigenen erstellen. Die standardmäßige Hellgrau-Vorhersagetextfarbe kann mithilfe der folgenden ANSI-Escapesequenz wiederhergestellt werden.
Set-PSReadLineOption -Colors @{ InlinePrediction = "`e[38;5;238m" }
Weitere Informationen zum Festlegen der Vorhersagefarbe und anderer PSReadLine-Einstellungen finden Sie unter Set-PSReadLineOption.
Ändern von Tastenkombinationen
PSReadLine enthält Funktionen zum Navigieren und Akzeptieren von Vorhersagen. Beispiel:
-
AcceptSuggestion
- Akzeptieren Sie den aktuellen Inlinevorschlag -
AcceptNextSuggestionWord
- Akzeptiere das nächste Wort des Inlinevorschlags -
AcceptSuggestion
ist inForwardChar
integriert und ist standardmäßig an RightArrow gebunden. -
AcceptNextSuggestionWord
wird in der FunktionForwardWord
erstellt, die an STRG+F gebunden werden kann
Sie können das Set-PSReadLineKeyHandler
Cmdlet verwenden, um Schlüsselbindungen zu ändern.
Set-PSReadLineKeyHandler -Chord "Ctrl+f" -Function ForwardWord
Mit dieser Bindung akzeptiert das Drücken von Strg f das nächste Wort im Inlinevorschlag, wenn sich der Cursor am Ende der aktuellen Bearbeitungszeile befindet. Sie können andere Schlüssel an AcceptSuggestion
und AcceptNextSuggestionWord
für ähnliche Funktionen binden. So können Sie beispielsweise festlegen, dass RightArrow das nächste Wort des Inlinevorschlags anstelle der gesamten Vorschlagszeile akzeptiert.
Set-PSReadLineKeyHandler -Chord "RightArrow" -Function ForwardWord
Verwenden anderer Vorhersage-Plug-Ins
Das Az.Tools.Predictor-Modul war das erste Plug-In für Predictive IntelliSense. Es verwendet Machine Learning, um vorherzusagen, welchen Azure PowerShell-Befehl Sie ausführen möchten, und die Parameter, die Sie verwenden möchten. Weitere Informationen und Installationsanweisungen finden Sie unter Ankündigung der allgemeinen Verfügbarkeit von Az.Tools.Predictor.
Das Modul CompletionPredictor fügt eine IntelliSense-Erfahrung für alle Elemente hinzu, die in PowerShell mit der Tabulatortaste abgeschlossen werden können. Wenn PSReadLine auf InlineView
festgelegt ist, erhalten Sie die normale Benutzeroberfläche zum Abschließen der Registerkarte. Wenn Sie zu ListView
wechseln, haben Sie das IntelliSense-Erlebnis. Sie können das CompletionPredictor-Modul aus dem PowerShell-Katalog installieren.
Wie bereits erwähnt, ListView
zeigt Ihnen die Quelle der Vorhersage. Wenn Sie mehrere Plug-Ins installiert haben, werden die Vorhersagen nach Quelle gruppiert, wobei der Verlauf zuerst aufgeführt ist, gefolgt von jedem Plug-In in der Reihenfolge, in der sie geladen wurden.
Erstellen Eines eigenen Vorhersagemoduls
Sie können ihren eigenen Vorhersager mit C# schreiben, um ein kompiliertes PowerShell-Modul zu erstellen. Das Modul muss die System.Management.Automation.Subsystem.Prediction.ICommandPredictor-Schnittstelle implementieren. Diese Schnittstelle deklariert die Methoden, die zum Abfragen von Vorhersageergebnissen und zum Bereitstellen von Feedback verwendet werden.
Weitere Informationen finden Sie unter Erstellen eines Befehlszeilenvorhersagers.