если иначе скрипт bash

если иначе скрипт bash

У меня есть следующий 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"

Связанный контент