简单的shell脚本,参数太多

时间:2014-02-21 23:12:43

标签: bash shell

执行此脚本时出现line 1: [: too many arguments错误:

if [ $(/amtu/Utilities/amtu_daemon status) = 'The daemon is stopped.' ];
    then
        echo "matched"
    else
        echo "no matched"
fi

我真的是shell的新手,谷歌上关于太多论点的一切都太过具体到个别问题了。谁能让我知道我的剧本有什么问题?

1 个答案:

答案 0 :(得分:3)

你的命令/amtu/Utilities/amtu_daemon status可能有多个单词。引用它应该解决它。

变化:

if [ $(/amtu/Utilities/amtu_daemon status) = 'The daemon is stopped.' ];

为:

if [ "$(/amtu/Utilities/amtu_daemon status)" = 'The daemon is stopped.' ];