Shell 编程支持下面几种运算符
算数运算符
以加法运算符做一个简单的示例:
#!/bin/bash
a=3;b=3;
val=`expr $a + $b`
echo "Total value : $val #输出:Total value : 6
关系运算符只支持数字,不支持字符串,除非字符串的值是数字。
关系运算符
通过一个简单的示例来演示关系运算符的使用,下面 shell 程序的作用是:当 score=100
的时候输出 A
否则输出 B
。
#!/bin/bash
score=90;
maxscore=100;
if [ $score -eq $maxscore ]
then
echo "A"
else
echo "B"
fi
输出结果:
B
逻辑运算符
示例:
#!/bin/bash
a=$(( 1 && 0))
echo $a #输出:0;逻辑与运算只有相与的两边都是1,与的结果才是1;否则与的结果是0
布尔运算符
字符串运算符
简单示例:
#!/bin/bash
a="abc";
b="efg";
if [ $a = $b ]
then
echo "a 等于 b"
else
echo "a 不等于 b"
fi
输出:
a 不等于 b
文件相关运算符
使用方式很简单,比如定义了一个文件路径 file="/usr/learnshell/test.sh"
。
判断这个文件是否可读,使用 if [ -r $file ]
;判断这个文件是否可写,可以这样 if [-w $file]
。
说明:以上图片源于网络