Shell脚本编程之逻辑运算符

Posted 小春熙子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Shell脚本编程之逻辑运算符相关的知识,希望对你有一定的参考价值。

1.逻辑运算符;

 

逻辑运算符实例:

a=10
b=20

if [ $a != $b ]
then
 echo "$a !=$b:a != b"
else
 echo "$a !=$b:a = b"
fi

if [ $a -lt 100 -a $b -gt 15 ]
then
 echo "$a 小于 100 且 $b 大于 15 : 返回 true"
else
 echo "$a 小于 100 且 $b 大于 15 : 返回 false"
fi

if [ $a -lt 100 -o $b -gt 100 ]
then
 echo "$a 小于 100 或 $b 大于 100 : 返回 true"
else
 echo "$a 小于 100 或 $b 大于 100 : 返回 false"
fi

if [ $a -lt 5 -o $b -gt 100 ]
then
 echo "$a 小于 5 或 $b 大于 100 : 返回 true"
else
 echo "$a 小于 5 或 $b 大于 100 : 返回 false"
fi

运算结果:

 

2.字符串运算符:

 

字符串运算符实例:

a="abc"
b="efg"


if [ $a = $b ]
then
 echo "$a=$b:a 等于 b"
else
 echo "$a=$b:a 不等于 b"
fi

if [ $a != $b ]
then
 echo "$a!=$b:a 不等于 b"
else
 echo "$a!=$b:a 等于 b"
fi

if [ -z $a ]
then
 echo "-z $a:字符串长度为 0"
else
 echo "-z $a:字符串长度不为 0"
fi

if [ -n $a ]
then
 echo "-n $a:字符串长度不为 0"
else
 echo "-n $a:字符串长度为 0"
fi

if [ $a ]
then
 echo "$a:字符串不为空"
else
 echo "字符串为空"
fi

 

运行结果:

 

3.文件测试运算符:

 

文件测试运算符实例:

 

file="/home/chunyu/ursalinkShell/test.sh"
if [ -r $file ]
then
 echo "文件可读"
else
 echo "文件不可读"
fi

if [ -w $file ]
then
 echo "文件可写"
else
 echo "文件不可写"
fi

if [ -x $file ]
then
 echo "文件可执行"
else
 echo "文件不可执行"
fi

if [ -f $file ]
then
 echo "文件为普通文件"
else
 echo "文件为特殊文件"
fi

if [ -d $file ]
then
 echo "文件是个目录"
else
 echo "文件不是个目录"
fi

if [ -s $file ]
then
 echo "文件不为空"
else
 echo "文件为空"
fi

if [ -e $file ]
then
 echo "文件存在"
else
 echo "文件不存在"
fi

 

运算结果:

 

以上是关于Shell脚本编程之逻辑运算符的主要内容,如果未能解决你的问题,请参考以下文章

shell编程之逻辑测试符和逻辑运算符

bash特性之逻辑运算和shell脚本的编写

shell编程之shell 运算

shell编程基础

Linux学习笔记:bash特性之多命令执行,shell脚本

Shell脚本之——条件语句if详解