• <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++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

              在匹配字符串相等時,我用了類似這樣的語句:

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

            echo "OK"

            fi

                在運行時出現了“ [: =: unary operator expected” 的錯誤,就一直找不到原因,嘗試了刪除等號兩側的空格和括號里的空格都不管用。最后baidu了一下,才找到原因,在條件表達式外再添加一層“[]”,就不會出錯了,如下:

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

            echo "OK"

            fi 

                究其原因,是因為如果變量STATUS值為空,那么條件表達式就成了 [ = "OK"] ,顯然 [ 和 "OK" 不相等并且缺少了 [ 符號,所以報了這樣的錯誤。當然不總是出錯,如果變量STATUS值不為空,程序就正常了,所以這樣的錯誤還是很隱蔽的。

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

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

            echo

            "OK"

            fi。

            當然,x也可以是其他字符。順便提一點,shell中有沒有雙引號在很多情況下是一致的。

             

            轉自:http://hi.baidu.com/vishare/blog/item/bd8ab9ee289753252cf53417.html

            国产Av激情久久无码天堂| 日本精品久久久久中文字幕| 久久精品国产精品亚洲| 国内精品久久久久国产盗摄| 久久午夜无码鲁丝片午夜精品| 国内精品伊人久久久影院| 新狼窝色AV性久久久久久| 婷婷综合久久中文字幕| 噜噜噜色噜噜噜久久| 2021久久国自产拍精品| 精品无码人妻久久久久久| 亚洲国产欧洲综合997久久| 日韩一区二区久久久久久| 久久只有这精品99| 久久99国产精品二区不卡| 热久久视久久精品18| 久久夜色精品国产亚洲| 亚洲人成网站999久久久综合| 国内精品久久久人妻中文字幕| 欧洲国产伦久久久久久久| 国产精品视频久久| 久久久久av无码免费网| 久久无码一区二区三区少妇 | 亚洲中文久久精品无码| 狠狠色伊人久久精品综合网| 久久国产色AV免费观看| 久久国产欧美日韩精品免费| 91久久国产视频| 精品九九久久国内精品| 精产国品久久一二三产区区别| 激情综合色综合久久综合| 久久免费美女视频| 精品久久无码中文字幕| 久久亚洲sm情趣捆绑调教| 狠狠色丁香婷婷综合久久来来去| 97久久精品午夜一区二区| 亚洲中文字幕久久精品无码喷水 | 色婷婷久久久SWAG精品| 99久久精品久久久久久清纯| 国产成人精品久久二区二区| 成人免费网站久久久|