Jak ustawić read
historię obsługi wbudowanych poleceń, naciskając klawisz strzałki w górę / w dół, aby je przełączać?
Próbowałem łapać, kiedy naciskasz klawisz w górę, jednak wydaje się, że nie działa z read
:
read -p '> ' -n 3 foo
echo
echo -n "$foo" | hexdump
Wydaje się, że naciśnięcie klawiszy strzałek działa i mogę to wykryć za pomocą tego, jednak jeśli kliknę aa↑, to się nie powiedzie, ponieważ odczyta tylko pierwszy znak identyfikatora strzałki w górę, a trzeci jest potrzebny do rozróżnienia innej strzałki Klucze.
źródło
rlwrap
ponieważ (przynajmniej na moim komputerze)rlwrap
nie jest w stanie płynnie obsługiwać CTRL-C, np. Spróbuj uruchomićUSERINPUT=$(rlwrap -o cat)
i nacisnąć CTRL-C i zobaczyć, jak zachowuje się twój terminal (uruchomreset
polecenie, aby powrócić do normalnego stanu) .