W terminalu mogę pisać, CTRL-Raby wyszukać pasujące polecenie wcześniej wpisane w BASH. Na przykład, jeśli wpisuję CTRL-Rnastępnie grep
jest mój ostatni list grep
poleceń, i mogę nacisnąć enter aby go używać. To daje tylko jedną sugestię. Czy jest jakiś sposób na przełączanie się między innymi wcześniej wpisanymi pasującymi poleceniami?
443
CTRL+SHIFT+r
nie działa dla mnie.[[ $- == *i* ]] && stty -ixon
do swojego .bashrc, a następnieCTRL+s
będzie działał jako odwrotnośćCTRL+r
Jeśli uważasz, że polecenie będzie często używane, możesz dodać znacznik
Następnie
Działa
#
to, ponieważ jest ogranicznikiem komentarza, tzn. Wszystko, co następuje po symbolu, nie jest interpretowane jako polecenie. Zostanie jednak zapisany w historii, dzięki czemu można go przeszukiwać.źródło
Możesz także skonfigurować strzałki w górę i w dół, aby wyszukiwać nieco inaczej, dodając te linie do ~ / .inputrc:
Zamiast szukać podciągu w dowolnym miejscu polecenia (jak Ctrl-r ), szuka polecenia zaczynającego się od tekstu po lewej stronie kursora . Na przykład, jeśli uruchomię następujące polecenia:
następnie wpisz
ls
i naciśnij Updwukrotnie, pokaże sięls bart
i kursor w tym samym miejscu. Porównaj z Ctrl- r, gdzie znajdziels
dwa razy w ostatniej linii, więc będziesz musiał nacisnąć go jeszcze raz, aby znaleźć poprzednią linię.Oba te podejścia mają swoje mocne strony i oba mogą zaoszczędzić dużo czasu.
źródło
~/.inputrc
i dodawać tych dwóch linii.~/.inputrc
dwóch liniach, w tym w wyszukiwaniu historii- *Istnieje zamiennik wbudowanego o Ctrl + Rnazwie hstr . Umożliwia przeszukiwanie historii poleceń pasujących do wszystkich tokenów wyszukiwania w tym samym czasie (między innymi) i przełączanie wyników za pomocą klawiszy strzałek:
Oto zrzut ekranu pokazowy .
Można go zainstalować w systemie operacyjnym z rodziny Debian, takim jak:
A następnie użyj Ctrl + R(po ponownym otwarciu terminala).
źródło