shell编程的判断语句与c编程的判断语句不同,if判断的是 命令的返回值,如果命令返回为0表示执行成功,则执行then后面的语句,如果返回的为非0值,则命令执行不成功,执行else后面的语句。
例如:
在shell中的判断主要有三类 : 数值比较,字符串比较,文件比较
1:数值比较的操作有:
test命令和 " [ " 符号命令,这两个命令的作用一样。没有区别。
(( ))双圆括号命令来进行高级的数学公式运算
[[ ]]双方括号命令不仅可以高级运算,还可以进行模式匹配如:if [[ $USER= "r*" ]] ;then
2: 字符串的比较操作命令为
test命令
3:文件的比较命令为
test命令
补充: shell中只能进行整数的运算,如果要进行浮点数的运算,需要使用到bc命令.使用规则如下
a+b ` 这是另一种用法,将所有的表达式以重定向管道传递给bc命令,以EOF 开始于结尾。