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.
PowerShell bietet Vervollständigungen für Eingaben, um Hinweise bereitzustellen, Entdeckungen zu fördern und die Eingabe zu beschleunigen. Befehlsnamen, Parameternamen, Argumentwerte und Dateipfade können durch Drücken der TAB-TASTE abgeschlossen werden.
Der Schlüssel Tab ist die Standardtastenbindung für Windows. PSReadLine stellt auch eine Funktion bereit, die an STRGLEERTASTE gebunden ist. Die Funktion zeigt eine Liste der übereinstimmenden Fertigstellungen unterhalb der Befehlszeile an.
Die Keybindings können mithilfe von PSReadLine-Cmdlets oder der Anwendung geändert werden, die PowerShell hostet. Keybindings können auf Nicht-Windows-Plattformen unterschiedlich sein. Weitere Informationen finden Sie unter about_PSReadLine_Functions.
Integrierte Tab-Vervollständigungsfunktionen
PowerShell ermöglicht die Tab-Vervollständigung für viele Aspekte der Befehlszeilenerfahrung.
Abschluss des Dateinamens
Wenn Sie einen Dateinamen oder Pfad aus den verfügbaren Optionen automatisch eingeben möchten, geben Sie einen Teil des Namens ein, und drücken Sie TAB Taste. PowerShell vervollständigt den Namen automatisch entsprechend der ersten gefundenen Übereinstimmung. Durch drücken der TAB-TASTE werden alle verfügbaren Optionen mit jeder Taste erneut durchlaufen.
Vervollständigung von Befehls- und Parameternamen
Die Tab-Erweiterung von Cmdlet-Namen unterscheidet sich geringfügig. Wenn Sie die Tab-Erweiterung für einen Cmdlet-Namen verwenden möchten, geben Sie den gesamten ersten Teil des Namens (das Verb) und den darauf folgenden Bindestrich ein. Sie können weitere Zeichen des Namens für eine Teilübereinstimmung eingeben. Wenn Sie z. B. etwas eingeben und dann die Tab-Taste drücken, erweitert PowerShell automatisch Ihre Eingabe zu dem -Cmdlet (beachten Sie, dass auch die Groß- und Kleinschreibung der Buchstaben in ihre Standardform geändert wird). Wenn Sie erneut die TAB-TASTE drücken, ersetzt PowerShell sie durch das nächste übereinstimmende Cmdlet. Die Tab-Vervollständigung funktioniert auch, um PowerShell-Aliase und native ausführbare Dateien aufzulösen.
Die folgende Abbildung zeigt Beispiele für die Vervollständigung von Registerkarten und Menüs.
Beispiele für Registerkarten- und Menüvervollständigung
Weitere Verbesserungen bei der Tab-Vervollständigung
Jede neue Version von PowerShell enthält Verbesserungen am Abschluss der Registerkarte, die Fehler beheben und die Benutzerfreundlichkeit verbessern.
PowerShell 7.0
- Die Tab-Vervollständigung löst Variablenzuweisungen auf, die Enumerationen sind oder typenbeschränkt sind.
- Die Tab-Vervollständigung erweitert abgekürzte Cmdlets und Funktionen. Beispiel: gibt zurück
PowerShell 7.2
- Beheben der Tab-Vervollständigung für nicht lokalisierte Elemente
- Behebung des Problems, dass Splatting als Positionsparameter in Vervollständigungen behandelt wird
- Hinzufügen von Ergänzungen für kommentarbasierte Hilfeschlüsselwörter
- Vervollständigung für Anweisungen hinzufügen
- Hinzufügen der Tab-Vervollständigung für den Ansichtsparameter von cmdlets
- Unterstützung für klassenbasierte Argumentvervollständiger hinzufügen
PowerShell 7.3
- Korrigiere die Tab-Vervollständigung im angegebenen Skriptblock für den
- Tab-Vervollständigung für Schleifenetiketten nach und hinzugefügt
- Verbessern der Hashtabelle-Vervollständigung in mehreren Szenarien
- Parameterübertragung
- Arguments-Parameter für
- FilterHashtable-Parameter für
- Eigenschaftsparameter für die CIM-Cmdlets
- Entfernt Duplikate aus Abschlussszenarien von Mitgliedern
- Unterstützung von Schrägstrichen bei der Vervollständigung von Netzwerkfreigaben (UNC-Pfad)
- Verbesserung der automatischen Vervollständigung von Mitgliedern
- Priorisieren Sie -Completions vor Enumerationen für Parameter
- Unterstützung für die Typinferenz bei generischen Methoden mit Typparametern hinzufügen
- Verbesserung der Typinferenz und Vervollständigungen
- Ermöglicht das Anzeigen von Methoden in Abschlussergebnissen für
- Verhindert den Abschluss von Ausdrücken, die "void " zurückgeben, wie ()
- Ermöglicht nicht standardmäßigen Klassenkonstruktoren die Anzeige, wenn der Klassenabschluss auf dem AST basiert.
Weitere Möglichkeiten zur Verbesserung der Tab-Vervollständigung von Befehlsparametern
Die integrierte Registerkartenerweiterung wird durch die interne Funktion TabExpansion oder TabExpansion2 gesteuert. Es ist möglich, Funktionen oder Module zu erstellen, die das Standardverhalten dieser Funktionen ersetzen. Sie finden Beispiele im PowerShell-Katalog, indem Sie nach dem Schlüsselwort TabExpansion suchen.
Verwenden der Attribute mit Parametern
Mit dem Attribut können Sie einem bestimmten Parameter Tab-Vervollständigungswerte hinzufügen. Das Attribut ist ähnlich wie . Beide Attribute verwenden eine Liste von Werten, die angezeigt werden sollen, wenn der Benutzer nach dem Parameternamen TAB- drückt. Im Gegensatz dazu werden die Werte jedoch nicht überprüft.
Weitere Informationen finden Sie unter:
- Argumentvervollständigungen
- ValidateSet
Verwenden des Attributs oder mit Parametern
Ein Argumentvervollständiger ist ein Skriptblock oder eine Funktion, das eine dynamische Tab-Vervollständigung für Parameterwerte bereitstellt.
Mit dem Attribut können Sie eine Funktion registrieren, die Vervollständigungswerte für den Parameter bereitstellt. Die Argument completer-Funktion muss für die Funktion verfügbar sein, die den Parameter mit dem Attribut enthält. In der Regel wird die Funktion in demselben Skript oder Modul definiert. Weitere Informationen finden Sie unter ArgumentCompleter.
Das -Cmdlet registriert zur Laufzeit einen Skriptblock als Argumentvervollständiger-Funktion für jeden von Ihnen angegebenen Befehl. Die Verwendung von ermöglicht es Ihnen, Argumentvervollständiger außerhalb des Skripts oder Moduls sowie für native Befehle zu definieren. Weitere Informationen finden Sie unter Register-ArgumentCompleter.
Predictive IntelliSense in PSReadLine
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. 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.
Vorhersagevorschläge sind keine Vorschläge zur Tab-Vervollständigung. Sie werden aus einer anderen Quelle generiert. Vorhersagevorschläge werden standardmäßig im grauen Text nach dem Cursor angezeigt. Verwenden Sie den RightArrow-Schlüssel , um den Vorschlag anzunehmen. Wenn Sie stattdessen die TAB-TASTE drücken, wird der Vorschlag ignoriert, und die nächste Tab-Abschlussoption wird angeboten.
Weitere Informationen finden Sie unter Verwenden von Prädiktoren.