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"

相關內容