si no, script bash

si no, script bash

Tengo el siguiente script bash

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

que uso en Jenkins ejecuta el indicador de shell.

Me da error diciendo Slave1 command not found.

Sólo quiero comprobar si la $NODE_NAMEvariable es igual al valor "Slave1". ¿Cómo hago eso en bash?

Respuesta1

El [[operador (y su otra mitad ]]) es en realidad una palabra clave y, como tal, debe tener un espacio a cada lado. Mientras esté allí, entrecomilla sus variables en caso de que contengan espacios u otra puntuación inesperada:

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

En cuanto a verificar el valor de la variable, simplemente repítalo. Agregue esta línea encima de su ifcondición:

echo "NODE: $NODE_NAME"

información relacionada