Puoi cercare nella cronologia di bash usando ciò che hai già digitato facilmente.
Supponiamo di aver appena digitato curl -I http://superuser.com
e di aver dimenticato di digitare Ctrl+ rprima:
$ curl -I http://superuser.com
Se vuoi fare una i-search sulla tua cronologia, vai prima all'inizio della riga ( Ctrl+ a), inserisci i-search ( Ctrl+ r) e digita Ctrl+ y. Questo dovrebbe cercare usando il contenuto dell'intero testo che hai già digitato:
(reverse-i-search)`curl -I http://superuser.com': curl -I http://superuser.com/faq
In alternativa, puoi usare Ctrl+ winvece di Ctrl+ yper cercare usando solo la prima parola del testo che hai appena digitato:
(reverse-i-search)`curl': curl -I http://superuser.com/faq
Associare tutto a una sola chiave
Se si desidera eseguire tutto ciò in una sequenza di tasti, è possibile associare un singolo tasto a una macro di tastiera. Se vuoi usare, per esempio, F12esegui:
$ bind '"\e[24~":"\C-a\C-r\C-y"'
Questo durerà per la sessione.
Rendendolo permanente
Basta definire la macro nel tuo ~/.inputrc
:
"\e[24~":"\C-a\C-r\C-y"
Nota che qui omettiamo le virgolette singole.
Potresti trovare utile questa risposta .
c-r
digitazionec-y
non incolla nulla lì. Sec-y