一、if大于等于小于写法
-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" ]
== 等于,如:if ["$a" == "$b"]
!= 不等于,如:if ["$a" != "$b"]
< 小于(需要双括号),如:(("$a" < "$b"))
<= 小于等于(需要双括号),如:(("$a" <= "$b"))
> 大于(需要双括号),如:(("$a" > "$b"))
>= 大于等于(需要双括号),如:(("$a" >= "$b"))
二、$参数
$# 表示运行脚本时传入参数的个数
$* 表示运行脚本时传入参数列表
$$ 表示进程id
$@ 表示运行脚本时传入所有参数
$0 表示执行脚本名称
$1 表示第一个参数
$2 表示第二个参数
$? 表示脚本执行状态0正常,其他表示有错误
三、if else
例子
if [ "a" == "$b" ] ; than
echo "hello world"
elif [ "a" == "c" ] ; than
echo "hello china"
else [ "a" == "d" ] ; than
echo "echo beijing"
fi
文件判断
-e 文件是否存在
-f 文件是否是普通文件(不是目录、设备文件、链接文件)
-s 表示文件大小不为0
-d 表示文件是否是目录
-b 表示是块设备(光驱、软盘等)
-c 表示是字符设备(键盘、声卡等)
-p 表示是管道
-h 表示是符号链接
-S 表示是否是socket
四、while true
例子:有条件的循环
min=1
max=100
while [ $min -le $max ]
do
echo $min
min=`expr $min + 1`
done
.例子:无条件的循环
while true
do
echo "hello world"
done
while true里面写if else
while true
do
if [ "$a" == "$b" ];then
echo "hello world"
fi
sleep 10
done