如何修复案例中的错误?

时间:2017-03-19 15:21:52

标签: linux bash shell scripting debian

我的代码是:

-cname)
    changeName="{2}"

    if [ -z $changeName ]; then
        echo -en "Which note name do you want to change?"
        read -r $changeName
        echo "What would you like to change the name to?"
        read -r changeNewName
    if ! [ -z "${3}" ]; then
        echo "The name has to have no spaces."
        exit 1
    fi          
    if [ -f /usr/share/cnote/notes/$changeNewName ]; then
        echo "That note name is already used. Please choose a new one."
        exit 1
    fi
    cp "/usr/share/cnote/notes/${changeName}" "/usr/share/cnote/notes/${changeNewName}"
    ;;

如果我删除了我的case语句的这一部分它再次起作用,但是在那部分我得到了那个错误: root @ minibian:〜/ cnote#。/ cnote -cname ./cnote:line 73:意外标记;;' ./cnote: line 73:附近的语法错误;'

1 个答案:

答案 0 :(得分:1)

您的第一个if区块未关闭。并且你不应该将$符号放在changeName之前。所以第一部分必须是

if [ -z $changeName ]; then
    echo -en "Which note name do you want to change?"
    read -r changeName
    echo "What would you like to change the name to?"
    read -r changeNewName
fi