OnWorks Linux i Windows Online WorkStation

logo

Darmowy hosting online dla stacji roboczych

<Poprzedni | Spis treści | Następne>

Wypróbowanie alternatywnych projektów podpowiedzi

Za pomocą tej listy znaków specjalnych możemy zmienić monit, aby zobaczyć efekt. Najpierw utworzymy kopię zapasową istniejącego ciągu monitu, aby móc go później przywrócić. Aby to zrobić, skopiujemy istniejący ciąg do innej zmiennej powłoki, którą sami utworzymy:



[ja@linuxbox ~]$ ps1_old="$PS1"

[ja@linuxbox ~]$ ps1_old="$PS1"


Tworzymy nową zmienną o nazwie ps1_stary i przypisz wartość PS1 do niego. Możemy sprawdzić, czy ciąg został skopiowany, używając przegapić polecenie:


[ja@linuxbox ~]$ echo $ps1_old

[\u@\h \W]\$

[ja@linuxbox ~]$ echo $ps1_old

[\u@\h \W]\$


Możemy przywrócić oryginalny monit w dowolnym momencie sesji terminalowej, po prostu odwracając proces:



[ja@linuxbox ~]$ PS1="$ps1_old"

[ja@linuxbox ~]$ PS1="$ps1_old"


Skoro jesteśmy gotowi do kontynuacji, zobaczmy, co się stanie, jeżeli otrzymamy pusty ciąg poleceń:



[ja@linuxbox ~]$ PS1=

[ja@linuxbox ~]$ PS1=


Jeśli nie przypiszemy niczego do ciągu monitu, nie otrzymamy niczego. Żadnego ciągu monitu! Monit nadal tam jest, ale nic nie wyświetla, tak jak prosiliśmy. Ponieważ jest to trochę niepokojące, zastąpimy je minimalnym monitem:



PS1="\$ "

PS1="\$ "


To już lepiej. Przynajmniej teraz możemy zobaczyć, co robimy. Zwróć uwagę na końcową spację w cudzysłowie. Zapewnia ona spację między znakiem dolara a kursorem, gdy

Wypróbowanie alternatywnych projektów podpowiedzi


wyświetla się monit.

Dodajmy dzwonek do naszego monitu:



$ PS1="\[\a\]\$ "

$ PS1="\[\a\]\$ "


Teraz powinniśmy słyszeć sygnał dźwiękowy za każdym razem, gdy wyświetlany jest monit. To może być denerwujące, ale może być przydatne, jeśli potrzebujemy powiadomienia, gdy zostanie wykonane szczególnie długotrwałe polecenie. Zwróć uwagę, że uwzględniliśmy \[ oraz \] sekwencje. Ponieważ dzwonek ASCII (\a) nie „drukuje”, czyli nie przesuwa kursora, musimy to powiedzieć bash dzięki czemu może prawidłowo określić długość monitu.

Następnie spróbujmy utworzyć informacyjny monit zawierający nazwę hosta i informacje o porze dnia:



$ PS1="\A \h \$ "

17:33 linuxbox $

$ PS1="\A \h \$ "

17:33 linuxbox $


Dodanie godziny dnia do naszego monitu będzie przydatne, jeśli będziemy musieli śledzić, kiedy wykonujemy pewne zadania. Na koniec utworzymy nowy monit, który będzie podobny do naszego oryginału:



17:37 linuxbox $ PS1="<\u@\h \W>\$ "

$

17:37 linuxbox $ PS1="<\u@\h \W>\$ "

$


Wypróbuj inne sekwencje podane w tabeli powyżej i zobacz, czy uda Ci się wymyślić nowy, genialny pomysł.


Najlepsze przetwarzanie w chmurze dla systemu operacyjnego w OnWorks: