Shell脚本菜单开发:如何添加返回菜单的选项?
给Shell脚本添加返回菜单功能的实现方法
结合你当前的脚本,我们可以通过调整循环结构、将菜单打印逻辑放入循环内,并新增返回菜单选项来实现需求。以下是修改后的完整脚本及关键说明:
while : do # 将菜单打印放入循环内,每次返回都重新显示完整选项 echo "1. I'm number one" echo "2. I'm number two" echo "3. I'm number three" echo "4. Return to menu" # 新增返回菜单选项 echo "5. Exit from menu" echo -n "Enter one of the following numbers: " read choice case $choice in 1) echo "You have selected the number one" echo "Selected number is one" # 执行完操作后等待用户确认,再返回菜单 read -p "Press Enter to return to menu..." ;; 2) echo "You have selected the number two" echo "Selected number is two" read -p "Press Enter to return to menu..." ;; 3) echo "You have selected the number three" echo "Selected number is three" read -p "Press Enter to return to menu..." ;; 4) echo "Returning to main menu..." sleep 1 # 短暂延迟提示用户,可选 ;; 5) echo "Exiting after the information have been received by both devices" exit 0 ;; *) # 处理无效输入,提升脚本健壮性 echo "Invalid choice! Please enter a number between 1-5" read -p "Press Enter to try again..." ;; esac # 清空屏幕,让菜单显示更整洁(可选) clear done
关键修改点
- 菜单循环显示:把原来仅在开头打印一次的菜单,放到
while循环内部,确保用户每次返回都能看到完整的选项列表。 - 新增返回菜单选项:添加选项4作为返回入口,执行时会提示用户并重新进入循环(即回到菜单)。
- 操作后等待确认:在1/2/3选项执行完毕后,加入
read -p让用户按回车再返回菜单,避免操作信息一闪而过。 - 无效输入处理:新增
*)分支,当用户输入错误选项时给出明确提示,引导重新输入。 - 选项逻辑调整:将原退出选项从4调整为5,让菜单功能划分更清晰。
内容的提问来源于stack exchange,提问作者user19873675
相关产品推荐
相关产品推荐

