有两件事我不确定我曾经尝试做了一段时间而且我很抱歉听起来很愚蠢,但我不知道在哪里整合代码以便在选项A或B时按子菜单按下“选项A选中” 我也不确定如何循环子标题,以便当它说“选项A / B被选中”时它返回到子菜单屏幕。直到我按回到主菜单按钮,它将进入主菜单。我非常感谢任何帮助,因为我是新手,特别是在这方面苦苦挣扎,谢谢!
答案 0 :(得分:1)
另一种方法:
select x in submenu1 submenu2 exit ; do
[[ $x == exit ]] && exit 0
select y in optionA optionB; do
echo "submenu $y heading"
echo "$x selected"
break
done
done
1) submenu1
2) submenu2
3) exit
> 1
1) optionA
2) optionB
> 1
submenu optionA heading
submenu1 selected
>
答案 1 :(得分:0)
简化任务的一种方法是将每个菜单保存在自己的功能中。每个菜单都会循环,直到用户按下退出键。在这种情况下,使用'x'。我的bash没有
function subopt1
{
subopt1=""
while [ "$subopt1" != "x" ]
do
echo Sub Menu 1 Heading
echo Option A
echo Option B
echo x Back to Main Menu
read -p "Select sub option1" subopt1
done
}
function subopt2
{
subopt2=""
while [ "$subopt2" != "x" ]
do
echo Sub Menu 2 Heading
echo Option A
echo Option B
echo x Back to Main Menu
read -p "Select sub-option2" subopt2
done
}
function mainopt
{
opt=""
while [ "$opt" != "x" ]
do
echo Menu Heading
echo Sub Menu 1
echo Sub Menu 2
read -p "Select Otion: " opt
if [ "$opt" = "1" ]; then
subopt1
elif [ "$opt" = "2" ]; then
subopt2
elif [ "$opt" = "x" ];then
break
fi
done
}
mainopt