Jak dostosować bash, aby dodać „dzwonek” systemowy do wszystkich pytań wiersza polecenia (readlines)?

1

Jak mogę dostosować bash, aby dodać „dzwonek” systemowy, gdy zażądano linii odczytu (monit o wprowadzenie danych)?

Uruchamianie (aktualizacja) bash 4.1.0 na Mac OS X 10.6 (Snow Leopard).

Zearin
źródło

Odpowiedzi:

4

Dodaj \[\a\] do PS1 (normalny monit) i PS2 (ciąg dalszy), np.

PS1="\u@\h\[\a\] "

wyświetli zwykły monit

username@hostname

w tym dzwonek.

\a jest BELL postać, \[ i \] powiedz powłoce, że nie jest drukowana (w celu obliczenia szerokości).


Dodaj PS1=... linia do ~/.bash_profile raz jesteś z tego zadowolony.


Nie działa to jednak w przypadku aplikacji opartych na wierszu poleceń. Nie sądzę, aby było to możliwe, ponieważ można często wprowadzać dane wejściowe, nawet podczas drukowania; to się kumuluje. A znak zachęty oznacza po prostu, że nic nie jest aktualnie zapisywane w terminalu.

Daniel Beck
źródło
Tak, nie chcę dzwonka w moim wezwaniu PS1. Zasadniczo chciałbym dzwonek, jeśli coś czeka readline wkład.
Zearin
Ale chyba wystarczająco blisko. Może jeśli dodam to do jednej z innych zmiennych PS #. Będę musiał sprawdzić. (W każdym razie, dzięki! ☺)
Zearin
2
@Zearin dowiedziałem się również od tego czasu PS3 używane do rzeczywistych monitów w bash skrypty.
Daniel Beck