簡體   English   中英

Bash腳本比較字符串的麻煩

[英]Bash script trouble with comparing strings

我正在嘗試比較字符串。 我收到“找不到命令”錯誤。 如何比較字符串?

碼:

 #!/bin/bash 
 STR="Hello World" 
 if [$STR="Hello World"]; then
   echo "passed test"
 else
   echo "didn't pass test"
 fi 

輸出:

 test.sh: line 4: [Hello: command not found
 didn't pass test

您應該添加空格。 對待[[[就像test和其他內置命令一樣,這是另一個命令。 與其他命令一樣,它的名稱后面需要有一個空格。 還建議您在Bash中在[ ]使用[[ ]] ,因為[[ ]]不使用IFS拆分其變量,也不進行路徑名擴展。 它還具有比其他功能更多的功能。

#!/bin/bash
STR="Hello World"
if [[ $STR = "Hello World" ]]; then
    echo "passed test"
else
    echo "didn't pass test"
fi

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM