if else bash 脚本

if else bash 脚本

我有以下 bash 脚本

if [[$NODE_NAME = "Node1"]]
then
    dir="../../test"
fi

我在 Jenkins 执行 shell 提示符中使用它。

它给了我一个错误说Slave1 command not found.

我只想检查$NODE_NAME变量是否等于 value "Slave1"。我该如何做到这一点bash

答案1

运算[[符(及其另一半,]])实际上是一个关键字,因此两侧都需要有一个空格。当您在那里时,请用双引号引用您的变量,以防它们包含空格或其他意外的标点符号:

if [[ "$NODE_NAME" == 'Node1' ]]
then
    dir="../../test"
fi

至于检查变量的值,只需回显即可。在您的条件上方添加此行if

echo "NODE: $NODE_NAME"

相关内容