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 閱讀(656) 評論(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',是可以比較的  回復  更多評論
            

          主站蜘蛛池模板: 武陟县| 金昌市| 奈曼旗| 赣榆县| 德化县| 太白县| 浦城县| 马尔康县| 怀仁县| 鲁山县| 梅河口市| 嫩江县| 西峡县| 柳江县| 武定县| 托克逊县| 武义县| 大宁县| 海门市| 丽水市| 桃园县| 容城县| 博白县| 永泰县| 香河县| 宜川县| 延长县| 上饶县| 邢台县| 成武县| 土默特右旗| 昭苏县| 铜山县| 中卫市| 响水县| 邹平县| 酒泉市| 集安市| 昌乐县| 定远县| 乌拉特前旗|