You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 12:35:29