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

UNIX环境下创建交互式分支会话的技术实现求助

实现UNIX环境下的交互式会话程序

Got it, let's build a straightforward shell script that meets your requirements. This will run smoothly in any standard UNIX-like environment (bash, zsh, sh—most systems have these pre-installed).

完整脚本示例

#!/bin/bash

# 启动交互式会话循环
while true; do
    # 初始问询
    echo -n "Enter a choice (quit/order): "
    read user_choice

    # 根据输入执行分支逻辑
    case "$user_choice" in
        quit)
            echo "Thanks for using the program. Goodbye!"
            exit 0
            ;;
        order)
            echo "=== Starting order process ==="
            # 后续问询示例,可按需扩展
            echo -n "What would you like to order? (pizza/salad/sandwich): "
            read order_item
            echo "Got it! We're preparing your $order_item. It'll be ready shortly."
            echo "=== Order process completed ==="
            ;;
        *)
            echo "Invalid choice! Please enter either 'quit' or 'order'."
            ;;
    esac
done

代码详细解释

  • 脚本头部:#!/bin/bash 指定用bash解释器执行,保证跨UNIX系统的兼容性(如果需要适配更轻量的sh环境,可改成#!/bin/sh)。
  • 无限循环:while true 让程序持续运行,直到用户主动触发退出逻辑。
  • 读取用户输入:echo -n 打印提示文本且不自动换行,read user_choice 获取用户输入并存储到变量中。
  • 分支判断:用case语句清晰处理不同输入场景:
    • 输入quit时,打印退出提示并通过exit 0正常终止程序。
    • 输入order时,进入自定义的订单流程,这里仅做了示例问询,你可以根据需求扩展更多步骤(比如询问数量、配送地址等)。
    • 输入其他内容时,触发错误提示,引导用户输入正确选项。

如何使用

  1. 将代码保存为文件,比如interactive_session.sh。
  2. 给文件添加执行权限:chmod +x interactive_session.sh。
  3. 运行脚本:./interactive_session.sh。

你可以完全自定义后续问询的内容和逻辑——比如添加输入验证、调用其他工具处理订单数据,甚至对接后台服务。

内容的提问来源于stack exchange,提问作者M. Pugh

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 09:51:54