(一)、语法
expr语法expr操作符对照表(上)
expr操作符对照表(下)
(二)、例子
num1=10
num2=20
$num2 \> $num1
$num1 + $num2
num3=`expr $num1 + $num2` // 30
num3=`expr $num1 - $num2` // 10
num3=`expr $num1 \* $num2` // 200
num3=`expr $num2 / $num1` //2
num3=`expr $num2 % $num1` // 0
num3=$(($num1+$num2))
输入一个正整数num,然后计算1+2+3+...+num,必须对num为正整数做判断,不符合应当允许再次输入。
#!/bash/bin
#
while true
do
read -p "pls input a positive number: " num
expr $num + 1 &> /dev/null
if [ $? -eq 0 ];then
if [ `expr $num \> 0` -eq 1 ];then
for((i=1;i<=$num;i++))
do
sum=`expr $sum + $i`
done
echo "1+2+3+...+$num = $sum"
exit
fi
fi
echo "Error, input enlegal"
continue
done
代码解析
expr $num + 1 &> /dev/null
计算 $num + 1 并将计算得到的结果扔到垃圾桶中
$?表示最近一次执行的结果,如果成功,返回为0,如果不成功返回其他数字。
网友评论