Shell的字符串表达式介绍-实践及企业案例脚本剖析

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Shell的字符串表达式介绍-实践及企业案例脚本剖析相关的知识,希望对你有一定的参考价值。

man test可以看到字符串

 -n STRING
              the length of STRING is nonzero
       STRING equivalent to -n STRING
       -z STRING
              the length of STRING is zero
       STRING1 = STRING2
              the strings are equal
       STRING1 != STRING2
              the strings are not equal
       INTEGER1 -eq INTEGER2
              INTEGER1 is equal to INTEGER2
       INTEGER1 -ge INTEGER2
              INTEGER1 is greater than or equal to INTEGER

字符串测试操作符:

常用字符串测试操作符

-z “字符串”,若串长度为0则真,-z可以理解为zero

-n “字符串”,若串长度为0则真,-n可以理解为no zero

"串1" = “串2”,若串1等于串2则真,可使用“==”代替“=”

“串1”!=“串2”,若串1不等于串2则真,但不能用“!==”代替“!=”

特别注意:

1、以上表格中的字符串测试操作符号必须用""双引号引起来哦。

2、比较符号两端必须有空格

3、字符串或字符串变量比较都要加双引号后再比较

4、字符串或字符串变量比较,比较符号两端最好都有空格。

练习:

[[email protected] ~]# [ -n "abc" ]&&echo 1||echo 0
1
[[email protected] ~]# [ -n "" ]&&echo 1||echo 0   
0
[[email protected] ~]# [ -z "abc" ]&&echo 1||echo 0 
0
[[email protected] ~]# [ ! -z "abc" ]&&echo 1||echo 0
1
[[email protected] ~]# [ -n "$test" ]&&echo 1||echo 0
1
[[email protected] ~]# test="oldboy"
[[email protected] ~]# [ -n "test" ]&&echo 1||echo 0
1
[[email protected] ~]# [ -n "$test" ]&&echo 1||echo 0
1
[[email protected] ~]# [ "$test" = "oldboy" ]&&echo 1||echo 0        
1

 

本文出自 “sandshell” 博客,请务必保留此出处http://sandshell.blog.51cto.com/9055959/1964139

以上是关于Shell的字符串表达式介绍-实践及企业案例脚本剖析的主要内容,如果未能解决你的问题,请参考以下文章

9-Shell的逻辑操作符知识介绍-实践及企业案例脚本剖析

shell脚本——正则表达式(包含grep详细介绍及应用)

shell截取字符串

shell脚本——awk详细介绍(包含应用案例)

再读:Linux系统命令及Shell脚本实践指南(二)

shell脚本之十四:企业案例