Angenommen, ich habe die folgenden Dateien in meinem aktuellen Verzeichnis:
buildBar.bat
buildFoo.bat
buildHouse.bat
Und ich gebe Folgendes an meiner Eingabeaufforderung ein ./bu
und dann TAB.
In Bash wird es erweitert auf
./build
In PowerShell wird es auf
./buildBar.bat
das erste Element in der Liste erweitert.In Cmd ist das Verhalten dasselbe wie in PowerShell.
Ich bevorzuge das Bash-Verhalten. Gibt es eine Möglichkeit, PowerShell dazu zu bringen, sich wie Bash zu verhalten?
powershell
cmd
tab-completion
RobSiklos
quelle
quelle
bash
;)Antworten:
Zu den neuen Versionen von PowerShell gehört PSReadline, mit dem dies möglich ist:
Fügen Sie diesen Befehl in C: \ Benutzer \ [Benutzer] \ Dokumente \ WindowsPowerShell \ profile.ps1 ein, um ihn dauerhaft zu machen.
quelle
MenuComplete
AnstattComplete
eher wie Bash zu sein, können Sie mit den Pfeiltasten aus den verfügbaren Optionennew-item $profile -itemtype file -force
C:\Users\[User]\Documents\WindowsPowerShell\profile.ps1.
Sie müssen tatsächlich laufennew-item $profile -itemtype file -force
touch
:-(Es ist jetzt möglich, PowerShell mithilfe von PSReadline dazu zu bringen, die Fertigstellung im Bash-Stil durchzuführen.
Schauen Sie sich die Vervollständigung von Bash-ähnlichen Registerkarten in PowerShell an .
quelle
Schauen Sie hier, nicht wirklich Ihre Desiderata:
PowerTab
Aber ich denke, es ist die beste Funktion zur Tab-Erweiterung für die PowerShell-Konsole !!!
quelle
tab
Vervollständigt nur den Befehlsnamen, nicht die vorherigen Argumente / Parameter.Um auch den vollständigen Befehl mit Argumenten aus dem Verlauf automatisch zu vervollständigen, legen Sie die folgende Tastenkombination fest.
Geben Sie nun einige Zeichen des Befehlsnamens ein und verwenden Sie den Aufwärts- / Abwärtspfeil, um diesen Befehl (mit Argumenten) aus dem Verlauf automatisch zu vervollständigen.
Echtzeit-Sparer.
quelle
Ändern Sie die TabExpansion-Funktion, um das gewünschte Ergebnis zu erzielen. Denken Sie daran, dass es möglicherweise bis zum Ende abgeschlossen ist, wenn Sie die Tabulatortaste erneut drücken. Ändern Sie den neuen Vorschlag an der Stelle, an der Sie ursprünglich die Taste gedrückt haben. Ich bevorzuge das eigentliche Verhalten, ich möchte, dass die Zeile so schnell wie möglich geschrieben wird. Vergessen Sie zum Schluss nicht die Platzhaltererweiterung, zum Beispiel: bu * h [Tab] wird automatisch zu buildHouse.bat abgeschlossen
quelle
Mit Powershell Core können wir die PredictionSource-Eigenschaft für PSReadLine als Verlauf festlegen , um automatische Vorschläge zu erhalten. Weitere Informationen finden Sie im YouTube-Video unter https://youtu.be/I0iIZe0dUNw
quelle
quelle