Die Readline-Befehle, nach denen Sie suchen, sind die folgenden history-search-*
:
history-search-forward Durchsucht vorwärts
den Verlauf nach der Zeichenfolge zwischen dem Beginn der aktuellen Zeile und der aktuellen Cursorposition (dem Punkt). Dies ist eine nicht inkrementelle Suche.
history-search-backward Durchsucht den Verlauf rückwärts
nach der Zeichenfolge zwischen dem Anfang der aktuellen Zeile und dem Punkt. Dies ist eine nicht inkrementelle Suche.
Binden Sie diese in Ihre .inputrc
, so:
"\e[A": history-search-backward # arrow up
"\e[B": history-search-forward # arrow down
können Sie die ersten Zeichen eines Befehls eingeben und dann die Verwendung Upund DownSchlüssel nur in diese Befehle bewegen durch Ihre , .bash_history
die mit dieser Zeichenkette beginnen.
Wenn Sie beispielsweise vi
und Upeingeben, gelangen Sie zum ersten vorherigen Befehl, der mit " vi
like" beginnt vim somefile
. Wenn UpSie eingeben , gelangen Sie zur nächsten vorherigen Instanz und so weiter.
Weitere Informationen zu allen Readline-Bindungen finden Sie hier:
http://linux.about.com/library/cmd/blcmdl3_readline.htm
Ein "!" Voranstellen zu dem Befehl, den Sie suchen. Wenn Sie die Funktionalität der Aufwärts- und Abwärtspfeile ersetzen möchten, müssen Sie die inputrc-Datei (wie in den anderen Antworten vorgeschlagen) ändern.
Wenn "Befehl" der gesuchte Befehl ist, geben Sie Folgendes ein:
Sie sollten "Befehl" als Ausgabe erhalten.
Wenn Sie einen Befehl suchen möchten, der einen Teil des Befehls enthält (aber möglicherweise nicht damit beginnt), drücken Sie ebenfalls Strg + R und geben Sie dann einen Teil des Befehls ein.
Sie können auch "tab" eingeben, um den eingegebenen Text automatisch zu vervollständigen (dies schließt auch Dateien ein). Dies ist nützlich, wenn Sie einen Befehl suchen, der nicht in Ihrem Verlauf enthalten ist (oder wenn Sie keine Verlaufsdatei haben).
Weitere Informationen zum "Mastering" der Verlaufsdatei finden Sie hier: http://www.thegeekstuff.com/2008/08/15-examples-to-master-linux-command-line-history/
Dies ist ein mögliches Duplikat von /programming/1030182/how-do-i-change-bash-history-completion-to-complete-whats-ready-on-the-line
quelle