选择嵌套语句

时间:2012-09-14 22:27:49

标签: bash

我写了这样的东西

    #!/bin/bash
PS3='Select an option and press Enter: '
select tree_1 in Date Host Users Quit
do
    case $tree_1 in
        Date)
            select tree_1_1 in Date1 Date2
            do
                case $tree_1_1 in
                    Date1) date;;
                    Date2) date;;
            esac
    done
        Host)  hostname;;
        Users)  who;;
        Quit)  break;;
    esac
done

在执行后我有

./ 1menu:第14行:意外令牌附近的语法错误`)'

./ 1menu:第14行:“主持人”主机名;;'

你能告诉我问题在哪里吗?谢谢你的帮助。

1 个答案:

答案 0 :(得分:3)

您尚未终止Date案件。您需要在内部案例陈述之后添加;;

Date)
    select tree_1_1 in Date1 Date2
    do
        case $tree_1_1 in
            Date1) date;;
            Date2) date;;
        esac
    done
    ;;   # you're missing this terminator