shell 中的运算符

一、变量判断 & 内容替换

在php中,使用isset来判断变量是否存在,那在shell中是如何做的呢?

变量配置方式 str 没有申明 str 为空字符串 str 已申明非空字符串
var=${str-expr} var=expr var= var=$str
var=${str:-expr} var=expr var=expr var=$str
var=${str+expr} var= var=expr var=expr
var=${str:+expr} var= var= var=expr
var=${str=expr} str=expr
var=expr
str 不变
var=
str 不变
var=$str
var=${str:=expr} str=expr
var=expr
str=expr
var=expr
str 不变
var=$str
var=${str?expr} expr 输出至 stderr var= var=$str
var=${str:?expr} expr 输出至 stderr expr 输出至 stderr var=$str

没见过这么难看的运算符…

二、加减乘除

# number1=10
# number2=3
# total=$(( $number1 + $number2  ))  //结果13
# total=$(( $number1 - $number2  ))   //结果7
# total=$(( $number1 * $number2  ))  //结果30
# total=$(( $number1 / $number2  )) //结果3

三、比较运算符

在脚本中非常的实用,参阅:shell 中比较运算符 test的使用方法

发表评论

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>