Shell 中比較字符串

最近在寫shell腳本時發現之前寫的shell中的字符串比較方法有的地方沒有生效,在一篇博客上找到了一個方法測試OK,現在記錄如下:

參考https://www.cnblogs.com/helloweworld/p/3404086.html

 

#!/bin/sh

aa=
bb="hello"
cc="world"
以下正確例子
# 1.注意判斷中的字符串變量用雙引號括起來(不括起來在多數情況下正確,某些情況下會出錯);
# 2.字符串判斷相等用一個等號,不是兩個;
# 3.=兩邊有空格;
# 4.[的左右兩邊,]的左邊有空格.
if [ "${aa}" = "${bb}" ]; then
    echo "yes"
else
    echo "no"
fi
以下不正確例子
# aa爲空,bb不爲空,這時不括起來會報錯.
if [ ${aa} = ${bb} ]; then
    echo "yes"
else
    echo "no"
fi

 

發佈了14 篇原創文章 · 獲贊 4 · 訪問量 6613
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章