标签:方式 变量 echo shell 操作 变量类型 概念 line linu
因为shell脚本是属于弱语言,没有变量类型的概念,所以定义变量会默认为字符串。就算看上去是一个数字,当直接进行计算时,就会出错:
x=1
echo $x+=1
# 输出1+=1,并不是自己想要的2
所以当我们需要进行数值运算时,我们需要一些特殊的方法,在Linex中提供了好几种方法。
x=1
echo $[$x+=1]
expr为Linux中的一个命令,可以用于数值计算,也可以用于字符串操作:
x=1
expr 14 % 9
expr 10 + 10
expr $x + 1
# 使用乘号比较特殊,必须用反斜杠
expx $x \* 3
使用expr
也存在缺陷:进行计算的值只能为整数,得到的结果也会以整数形式返回。
相比于$[]
和expr
,这种方式功能比较强大:
$
符号前缀x=1
(( y = x + 1,z = y + 1 ))
echo $z
a=10
b=10
total=$((a*b))
var=1
# 这种写法运算符间不能有空格
let "var+=1"
let var+=1
echo $var
标签:方式 变量 echo shell 操作 变量类型 概念 line linu
原文地址:https://www.cnblogs.com/yisany/p/10338964.html