$# 是启动脚本时携带的参数个数

-ne 是不等于

这个语句的意思是“如果shell的启动参数不等于1个”

$# 表示提供到shell脚本或者函数的参数总数;

$1 表示第一个参数。

-ne 表示 不等于

另外:

整数比较

-eq     等于,如:if ["$a" -eq "$b" ]

-ne     不等于,如:if ["$a" -ne "$b" ]

-gt     大于,如:if ["$a" -gt "$b" ]

-ge    大于等于,如:if ["$a" -ge "$b" ]

-lt      小于,如:if ["$a" -lt "$b" ]

-le      小于等于,如:if ["$a" -le "$b" ]

<=  小于等于(需要双括号),如:(("$a" <= "$b"))

>  大于(需要双括号),如:(("$a" > "$b"))

>=  大于等于(需要双括号),如:(("$a" >= "$b"))

另外:$?是shell变量,表示"最后一次执行命令"的退出状态.0为成功,非0为失败

linux 脚本 $? -ne 0是什么意思,【shell】linux之if [ $? -ne 0 ];_美的时光的博客-CSDN博客

利用 (()) 来对数值进行运算,C=$(($A+$B)),例如:

 
  1. [root@master ~]# C=$(($A+$B))[root@master ~]# echo $C

2.2 关系运算符

了解了算术运算,接下来让我们学习关系运算。

比较符描述示例
-eq,equal等于[1 -eq 1] 为 true
-ne,not equal不等于[1 -ne 1] 为 false
-gt,greater than大于[2 -gt 1] 为 true
-lt,lesser than小于[2 -lt 1] 为 false
-ge,greater or equal大于或等于[2 -ge 1] 为 true
-le,lesser or equal小于或等于[2 -le 1] 为 false

关系运算顾名思义就是比较数字的大小,注意关系运算符作用的为数字,不能用其来比较字符串。

Shell 运算符 - 编程之家 

Logo

更多推荐