次のbashスクリプトがあります
if [[$NODE_NAME = "Node1"]]
then
dir="../../test"
fi
Jenkins実行シェルプロンプトでこれを使用しています。
というエラーが発生しましたSlave1 command not found
。
$NODE_NAME
変数がvalueと同じであることを確認したいと思います"Slave1"
。どうすればいいですかbash
?
ベストアンサー1
演算子[[
(および残りの半分]]
)は実際にはキーワードなので、両方にスペースが必要です。そこにある間にスペースやその他の予期しない句読点が含まれている場合に備えて、変数を二重引用符で囲みます。
if [[ "$NODE_NAME" == 'Node1' ]]
then
dir="../../test"
fi
変数の値を確認するにはエコーできます。基準の上に次の行を追加してくださいif
。
echo "NODE: $NODE_NAME"