Calvin's Tech Space

          成于堅忍,毀于浮躁

             :: 首頁 :: 聯系 :: 聚合  :: 管理
          比較兩個字符串是否相等的辦法是: 
          if [ "$test"x = "test"x ]; then
          這里的關鍵有幾點:
          1 使用單個等號,也可以使用兩個等號
          2 注意到等號兩邊各有一個空格:這是unix shell的要求
          3 注意到"$test"x最后的x,這是特意安排的,因為當$test為空的時候,上面的表達式就變成了x = testx,顯然是不相等的。而如果沒有這個x,表達式就會報錯:[: =: unary operator expected

          以上在android shell下不能運行,android shell不認識。
          posted on 2011-04-13 18:04 calvin 閱讀(650) 評論(1)  編輯  收藏 所屬分類: Linux

          Feedback

          # re: shell字符串比較 2012-09-13 21:24 rrt
          [ccripts]$ unset test


          [scripts]$ if [ $test = '111' ] ; then echo 1 ;fi
          -bash: [: =: unary operator expected


          [scripts]$ if [ "$test" = '111' ] ; then echo 1 ;fi
          [chaolm@rrt-dev-centos6_2 scripts]$

          加了引號就相當于 "" = '1111',是可以比較的  回復  更多評論
            

          主站蜘蛛池模板: 澳门| 马鞍山市| 灌云县| 稷山县| 增城市| 德保县| 且末县| 滦平县| 柞水县| 万载县| 濉溪县| 宜君县| 云梦县| 行唐县| 麻江县| 长治县| 中山市| 宜都市| 泰宁县| 滦南县| 敦煌市| 海兴县| 四川省| 侯马市| 仙居县| 黄梅县| 阿勒泰市| 将乐县| 旬邑县| 铜川市| 潼关县| 临洮县| 武胜县| 丘北县| 阳江市| 伊川县| 连城县| 额济纳旗| 连江县| 阿尔山市| 石林|