У меня есть простое меню Bash здесь.Кажется, все работает отлично, за исключением того, что я не могу понять, как вернуться в главное меню из моего SubMenu.После выполнения сценария я выбираю «3», чтобы перейти в «SubMenu» оттуда, я снова нажимаю «3», чтобы вернуться в «Главное меню», но вместо этого он просто показывает мне опции «SubMenu».
Я попытался заменить «break» на «./menu.sh», который является названием моего скрипта, который, кажется, работает, однако я уверен, что это, вероятно, не самый идеальный способ решения этой проблемы.
#!/bin/bash
clear
while true
do
clear
echo "######"
echo " Menu"
echo "######"
echo ""
PS3='Select an option: '
options=("Option1" "Option2" "SubMenu" "Exit")
select opt in "${options[@]}"
do
case $opt in
"Option1")
echo Option1
read -p ""
break
;;
"Option2")
echo Option2
read -p ""
break
;;
"SubMenu")
while true
do
clear
echo "#########"
echo " SubMenu"
echo "#########"
echo ""
PS3='Select an option: '
options=(
"SubMenu Option1"
"SubMenu Option2"
"Main Menu"
)
select opt2 in "${options[@]}"
do
case $opt2 in
"SubMenu Option1")
echo "Sub-Menu Option1"
read -p ""
break
;;
"SubMenu Option2")
echo "Sub-Menu Option2"
read -p ""
break
;;
"Main Menu")
"./menu"
;;
*) echo "invalid option";;
esac
done
done
;;
"Exit")
exit
;;
*) echo "invalid option"
;;
esac
done
done