Domyślnie na Linux-ie nie jest wymagany do obsługi tworzenia konsolowych okien dialogowych pakiet dialog, należy więc go doinstalować poleceniem:
apt-get install dialog
Okno dialogowe wyboru yes/no
Wywołanie okna dialogowego wyboru wygląda następujaco:
dialog --clear --title "Okno dialogowe yes/no" --backtitle "BASH" --yesno "Twój wybór:" 10 40
YOUR_CHOOSE=$?;
if [ "$YOUR_CHOOSE" == 0 ];
then
echo "Wybrałeś Yes";
elif [ "$YOUR_CHOOSE" == 1 ];
then
echo "Wybrałeś No";
else
echo "Niczego nie wybrałeś";
fi
Uruchomienie powyższego skryptu spowoduje wyświetlenie okienka z poniższej ilustracji.
Możliwe jest zaznaczenie przycisku Yes lub No za pomocą strzałek. Enter zatwierdza wybór, Esc wychodzi z programu bez wybrania żadnej opcji. Po wciśnięciu przycisku Yes do zmiennej $? zwrócone zostanie 0, dla przycisku No zwrócona wartość to 1, natomiast dla zamknięcia okna bez wybrania przycisku -1.
Okno dialogowe menu
Okno dialogowe umożliwia wybranie jednej z dostępnych pozycji, oto przykład skryptu wykorzystującego okno dialogowe menu:
W wyniku działania powyższego kodu oczom twym ukazać powinno się okienko z poniższego rysunku.
Warto nadmienić, że dane związane z wyborem pozycji w menu zostaną przekierowane do pliku, którego nazwa znajduje się w zmiennej OUTPUT. Po zamknięciu okna powinno pojawić się coś takiego:
Wybrałeś Ok
1
jeżeli tylko wciśnięto przycisk Ok z zaznaczoną opcją nr. 1.
Okno dialogowe checklist
Okno tego typu umożliwia wybranie kilku różnych opcji na raz, oto przykład kodu z jego użyciem: