shell运算符之字符串运算符

2018-03-18 07:42:11 6416

shell运算符之字符串运算符

下表列出了常用的字符串运算符,假定变量 a 为 "zgy",变量 b 为 "ldy":

image.png

示例代码如下

#!/bin/bash

a="zgy"
b="ldy"

if [ $a = $b ]
then
   echo "$a = $b : a 等于 b 返回true"
else
   echo "$a = $b: a 不等于 b  返回false"
fi
if [ $a != $b ]
then
   echo "$a != $b : a 不等于 b 返回true"
else
   echo "$a != $b: a 等于 b 返回false"
fi
if [ -z $a ]
then
   echo "-z $a : 字符串长度为 0 返回true"
else
   echo "-z $a : 字符串长度不为 0 返回false"
fi
if [ -n $a ]
then
   echo "-n $a : 字符串长度不为 0 返回true"
else
   echo "-n $a : 字符串长度为 0 返回false"
fi
if [ $a ]
then
   echo "$a : 字符串不为空 返回true"
else
   echo "$a : 字符串为空 返回false"
fi


执行后结果如下

image.png

注释:单看执行结果写的返回true或者返回false,看上去感觉会很怪异,并且和逻辑不通,因为我是拿来注释一下他的返回。所以造成把结果连成一句话来看就是不通的,但是您去理一遍之后把代码敲一遍,相信您就会理解了。

若是不理解,试一试把返回true和返回false去掉,然后去看。

image.png

提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: