sehll变量比较

1、比较符号解释

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

$1 表示第一个参数。

-ne 表示 不等于

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

 

2、整数比较

-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"))

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

 

3、字符串比较

注意: $a 一定要带双引号 " " ; 要比较的字符串也要加双引号" "  ;  awk 取出来httpd后要把后面的长空格给去掉,否则报错

 

a=`netstat -tnlp |grep -n "httpd" | awk -F '/' '{print $2}'| sed 's/ //g'`
if [ "$a" == "httpd" ];then
    echo "startting"
else
    echo "stopping" 
fi

 

4、-z 使用 

-z 判断变量的值是否为空 zero=0

变量的值为空 返回0 为true

变量的值非空 返回1 为false

 

5、-n使用

注意:下面这个最好不要用,容易出错

-n 判断变量的值是否为空 name=名字

变量的值为空 返回1 为false

变量的值非空 返回0 为true

 

posted @ 2018-11-20 21:34  effortsing  阅读(178)  评论(0编辑  收藏  举报