2
我想在通過選擇選擇做一個完整的BASH 菜單與子菜單。擊子菜單(SELECT選擇加入)
問題:當我去一個子菜單,然後回到初始菜單,它不顯示選項。
----------------------------------------------
Greenwatch's Kiosk debug menu
----------------------------------------------
1) Keyboard Layout, 5) Configure Kiosk's password,
2) Timezone configuration, 6) Set Proxy,
3) -, 7) Remove Proxy
4) Launch Kiosk anyway,
Enter your choice (mainmenu), press 0 to reboot: 1
1) Azerty layout (BE)
2) Querty layout (US)
3) Cancel
Enter your choice (submenu): 1
AZERTY Keyboard configured
Enter your choice (mainmenu), press 0 to reboot:
這是代碼(簡化 - 附只有一個submenu-)
choose_keyboard() {
show_title "Choose your keyboard layout"
clear;
select opt in "Azerty layout (BE)" "Querty layout (US)" "Cancel"; do
case "$REPLY" in
1) loadkeys be-latin1; echo "AZERTY Keyboard configured"; break;;
2) loadkeys us; echo "QWERTY Keyboard configured"; break;;
3) echo "Canceled"; break;;
777) break;;
*) echo "This is not a valid option, retry";;
esac
done
}
main_menu() {
show_title "$title"
select opt in "${options[@]}"; do
case "$REPLY" in
0) show_title "See you as late as possible!"; sudo systemctl reboot;;
1) choose_keyboard;;
2) choose_timezone;;
3) lauch_kiosk;;
4) choose_password;;
5) choose_ipconfig;;
6) choose_proxy;;
7) choose_testlab;;
777) break;;
*) echo "This is not a valid option, retry";;
esac
done
}
main_menu
我怎麼能強迫選擇顯示菜單? 注意:如果我將main_menu調入choose_keyboard函數,我肯定會獲得一個stackoverflow錯誤!
這是完全按照需要工作! –