判断语句
[ condition ] (注意condition前后要有空格)
#非空返回true,可使用$?验证(0为true,>1为false)
[ itcast ]
#空返回false
[ ]
[ condition ] && echo OK || echo notok
条件满足,执行后面的语句
常用判断条件
= 字符串比较
-lt 小于
-le 小于等于
-eq 等于
-gt 大于
-ge 大于等于
-ne 不等于
-r 有读的权限
-w 有写的权限
-x 有执行的权限
-f 文件存在并且是一个常规的文件
-s 文件存在且不为空
-d 文件存在并是一个目录
-b文件存在并且是一个块设备
-L 文件存在并且是一个链接
if判断
语法
if condition
then
statements
[elif condition
then statements. ..]
[else
statements ]
fi
例子
#!/bin/bash
read -p "please input your name:" NAME
#printf '%s\n' $NAME
if [ $NAME = root ]
then
echo "hello ${NAME}, welcome !"
elif [ $NAME = itcast ]
then
echo "hello ${NAME}, welcome !"
else
echo "SB, get out here !"
fi
case语句
case $1 in
start)
echo "starting"
;;
stop)
echo "stoping"
;;
*)
echo "Usage: {start|stop} “
esac