Ich habe einige AIX 7-Server, die auf die Software beschränkt sind, die ich installieren kann, und frage mich, ob ich ksh
die Tabulatortaste verwenden kann, um Dateinamen bei der Shell-Promotion zu vervollständigen.
Die Manpages sind spärlich für ksh und ich sehe hier keine relevanten Fragen zu diesem Thema. Aufgrund der Mehrheit der Benutzer, die ksh verwenden, zögere ich, meine Shell auf Bash umzustellen - aber ich nehme an, das ist einfach.
Ich melde mich zunächst von einem PC mit putty / ssh an und arbeite hauptsächlich von xterm aus, sobald die X11-Weiterleitung den Datenverkehr zu Hummingbird Exceed auf dem PC zurückbringt.
Kann / usr / bin / ksh, das mit bos.rte.shell
AIX 7.1 geliefert wird, so konfiguriert werden, dass die Dateinamenvervollständigung (die normalerweise durch Drücken von ESC + \ ausgelöst wird) durch Drücken der TAB-Taste ausgelöst wird ?
box.rte.shell
ist 7.1.1.16Antworten:
Überprüfen Sie, ob
/usr/bin/ksh93
verfügbar:Wenn es heißt
Verwenden Sie das dann als interaktive Shell. Es hat die $ {. Sh.version} und sollte die TAB-Erweiterung haben.
quelle
ksh
neuen Tricks zu lehren . Es scheint, dass das/usr/bin/ksh
absichtlich nicht mit Funktionen aktualisiert wird und die zweite Binärdatei neuere Funktionen kompiliert hat. Da es sofort zu funktionieren scheint, funktioniert das Drücken der Tabulatortaste wie erwartet, ohne dass das Risiko besteht, dass andere Skripte aufgrund eines Unterschieds zwischen ksh und ksh93 fehlschlagen.Ich nehme an, Ihre Shell befindet sich im vi-Modus. Ich bin mir nicht sicher, ob dies funktionieren wird, da meine AIX-Kenntnisse begrenzt sind, aber Sie können versuchen, dies Ihrem Profil hinzuzufügen:
Google sagt, dass ksh in AIX aus dieser Sicht irgendwie verkrüppelt ist, also wäre Bash vielleicht eine bessere Wahl.
quelle
vi
Bindungen, habe aber auf Emacs umgestellt, um zu sehen, ob die Tabulatortaste wie erwartet funktioniert.Für diese Frage gibt es eine Alternative.
Stellen Sie zuerst den vi-Modus ein für
ksh
:Danach können Sie den TabSchlüssel auf diese Weise verwenden. Beispiel: Sie möchten den nächsten Pfad vervollständigen:
Geben Sie die TabTaste zweimal ein und Sie werden Folgendes sehen:
Angenommen, Sie möchten Option
2
(/usr/local/share/
Ordner), geben Sie2
Tab(2
Schlüssel gefolgt vom TabSchlüssel) ein. Und Sie werden dies sehen:quelle