• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Prayer

            在一般中尋求卓越
            posts - 1256, comments - 190, trackbacks - 0, articles - 0
              C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

              在匹配字符串相等時(shí),我用了類似這樣的語(yǔ)句:

            if [ $STATUS == "OK" ]; then     

            echo "OK"

            fi

                在運(yùn)行時(shí)出現(xiàn)了“ [: =: unary operator expected” 的錯(cuò)誤,就一直找不到原因,嘗試了刪除等號(hào)兩側(cè)的空格和括號(hào)里的空格都不管用。最后baidu了一下,才找到原因,在條件表達(dá)式外再添加一層“[]”,就不會(huì)出錯(cuò)了,如下:

            if [[ $STATUS = "OK" ]]; then    

            echo "OK"

            fi 

                究其原因,是因?yàn)槿绻兞縎TATUS值為空,那么條件表達(dá)式就成了 [ = "OK"] ,顯然 [ 和 "OK" 不相等并且缺少了 [ 符號(hào),所以報(bào)了這樣的錯(cuò)誤。當(dāng)然不總是出錯(cuò),如果變量STATUS值不為空,程序就正常了,所以這樣的錯(cuò)誤還是很隱蔽的。

                或者,用下面的方法也能避免這種錯(cuò)誤:

            if [ "$STATUS"x == "OK"x ]; then     

            echo

            "OK"

            fi。

            當(dāng)然,x也可以是其他字符。順便提一點(diǎn),shell中有沒有雙引號(hào)在很多情況下是一致的。

             

            轉(zhuǎn)自:http://hi.baidu.com/vishare/blog/item/bd8ab9ee289753252cf53417.html

            亚洲午夜久久久影院| 色综合久久88色综合天天| 亚洲欧美一级久久精品| 一本综合久久国产二区| 中文无码久久精品| 久久99国产乱子伦精品免费| 丁香五月综合久久激情| 热综合一本伊人久久精品| 久久精品人成免费| 久久亚洲国产成人影院网站| 久久亚洲AV成人无码国产| 久久露脸国产精品| 2020久久精品国产免费| av色综合久久天堂av色综合在| 久久精品国产免费| 亚洲av日韩精品久久久久久a| 一本一道久久精品综合| 亚洲AV成人无码久久精品老人| 久久www免费人成看国产片| 久久精品中文闷骚内射| 亚洲欧美日韩精品久久亚洲区| 久久综合综合久久97色| 久久国产亚洲高清观看| 亚洲av日韩精品久久久久久a | 亚洲人成网站999久久久综合 | 久久久久久曰本AV免费免费| 国内精品久久久久久久亚洲| 99久久国语露脸精品国产| 99久久无色码中文字幕人妻| 久久精品国产一区二区三区| 久久99精品国产99久久| 久久国产精品-久久精品| 亚洲AV日韩AV永久无码久久| 97久久国产综合精品女不卡 | 国产精品一区二区久久国产| 亚洲AV无码一区东京热久久| 亚洲色婷婷综合久久| 一本色道久久88精品综合| 久久精品国产亚洲AV影院| 久久精品国产99国产精品亚洲| 久久久久久精品成人免费图片|