
Wie die meisten Leute hier wissen, vervollständigt Bash das Wort, wenn Sie bei der Verwendung von Bash in der Eingabeaufforderung einen Dateinamen, einen Befehl oder eine Option zu einem Befehl usw. teilweise eingeben, wenn es genau eine Übereinstimmung gibt.
Wenn es mehr als eine Übereinstimmung gibt, müssen Sie <Tab>
zweimal drücken und Bash generiert eine Liste möglicher Übereinstimmungen.
Ich möchte Bash so konfigurieren, dass diese Optionen einfach bei der ersten Eingabe bereitgestellt werden <Tab>
.
Ist dies möglich, ohne ein Skript zu schreiben? Also eine Shell-Option?
man bash
hat einen Abschnitt „Programmierbare Vervollständigung“, aber ich konnte nicht erkennen, ob es eine Option zum Aktivieren der „Einzeltab-Vervollständigung“ gibt.
Antwort1
Fügen Sie dies in Ihr ein ~/.inputrc
:
set show-all-if-ambiguous on
Für zusätzliches Guthaben fügen Sie hinzu:
set completion-ignore-case on
Alle Optionen finden Sie imGNU-Handbuch...
Antwort2
Mein Ruf reicht nicht aus, um einen Kommentar abzugeben, aber ich möchte zu Jasonwryans Antworten hinzufügen, dass er ergänzt werden kann, .bash_profile
oder .bashrc
indem man sie folgendermaßen schreibt:
bind 'set show-all-if-ambiguous on'
bind 'set completion-ignore-case on'
Ich glaube, jemand anderes findet diese Frage genauso wie ich.