中科因仑“3+1”工程特种兵精英论坛

标题: Shell运算符:Shell字符串运算符详解 [打印本页]

作者: lucky80204    时间: 2014-8-10 09:09
标题: Shell运算符:Shell字符串运算符详解
本帖最后由 lucky80204 于 2014-8-10 09:11 编辑

字符串运算符

先来看一个例子:
  1. #!/bin/sh
  2. a="abc"
  3. b="efg"
  4. if [ $a = $b ]
  5. then
  6.    echo "$a = $b : a is equal to b"
  7. else
  8.    echo "$a = $b: a is not equal to b"
  9. fi
  10. if [ $a != $b ]
  11. then
  12.    echo "$a != $b : a is not equal to b"
  13. else
  14.    echo "$a != $b: a is equal to b"
  15. fi
  16. if [ -z $a ]
  17. then
  18.    echo "-z $a : string length is zero"
  19. else
  20.    echo "-z $a : string length is not zero"
  21. fi
  22. if [ -n $a ]
  23. then
  24.    echo "-n $a : string length is not zero"
  25. else
  26.    echo "-n $a : string length is zero"
  27. fi
  28. if [ $a ]
  29. then
  30.    echo "$a : string is not empty"
  31. else
  32.    echo "$a : string is empty"
  33. fi
复制代码
运行结果:
  1. abc = efg: a is not equal to b
  2. abc != efg : a is not equal to b
  3. -z abc : string length is not zero
  4. -n abc : string length is not zero
  5. abc : string is not empty
复制代码

字符串运算符列表
运算符 说明举例
= 检测两个字符串是否相等,相等返回 true。 [ $a = $b ] 返回 false。
!= 检测两个字符串是否相等,不相等返回 true。 [ $a != $b ] 返回 true。
-z 检测字符串长度是否为0,为0返回 true。 [ -z $a ] 返回 false。
-n 检测字符串长度是否为0,不为0返回 true。 [ -z $a ] 返回 true。
str 检测字符串是否为空,不为空返回 true。 [ $a ] 返回 true。




作者: liliuyang    时间: 2014-8-10 09:12
好东西额
作者: 伊海    时间: 2014-8-10 15:29
忒有用,再接再厉




欢迎光临 中科因仑“3+1”工程特种兵精英论坛 (http://bbs.enlern.com/) Powered by Discuz! X3.4