
У меня есть следующий bash-скрипт
if [[$NODE_NAME = "Node1"]]
then
dir="../../test"
fi
который я использую в командной строке Jenkins.
У меня выдает ошибку, говорящую Slave1 command not found
.
Я просто хочу проверить, $NODE_NAME
равна ли переменная значению "Slave1"
. Как это сделать в bash
?
решение1
Оператор [[
(и его вторая половина, ]]
) на самом деле является ключевым словом, и поэтому должен иметь пробел с обеих сторон. Пока вы там, заключите свои переменные в двойные кавычки на случай, если они содержат пробелы или другие неожиданные знаки препинания:
if [[ "$NODE_NAME" == 'Node1' ]]
then
dir="../../test"
fi
Что касается проверки значения переменной, просто выведите его. Добавьте эту строку над вашим if
условием:
echo "NODE: $NODE_NAME"