1. 条件测试
   
语法格式:
test 判断语句或者:
[ 判断语句 ]
    (1)关于文件属性的测试
   
# file 指任意一个文件
[ -e file ]
#文件
存在
则为真
[ -f file ]
#文件
存在且为常规文件
为真
[ -d file ]
#文件
存在且是一个目录
为真
[ -s file ]
#文件
存在且不为空
为真
    (2)关于字符串测试操作符
   
[ -z <字符串> ]
#如果字符串
为空
则为真
[ -n <字符串> ]
#如果字符串
不为空
则为真
[ <字符串1> = <字符串2> ]
#串1和串2
相同
为真
[ <字符串1> != <字符串2> ]
#串1和串2
不相同
为真
    (3)关于算术测试的操作符
   
[ <数字1> -eq <数字2> ]
#数字1和数字2
相等
则为真
[ <数字1> -ne <数字2> ]
#数字1和数字2
不相等
则为真
[ <数字1> -le <数字2> ]
#数字1
<=
数字2则为真
less than or equal(小于或等于)
[ <数字1> -ge <数字2> ]
#数字1
>=
数字2则为真
greater than or equal(大于或等于)
[ <数字1> -lt <数字2> ]
#数字1
<
数字2则为真
less than(小于)
[ <数字1> -gt <数字2> ]
#数字1
>
数字2则为真
greater than(大于)
    2. if结构的语法格式
   
if 判断条件; then
    if内语句
else
    else内语句
fi
    3. 条件执行
   
命令1 && 命令2 #命令1执行成功(状态码0)才执行命令2
命令1 || 命令2 #命令1执行失败(状态码不为0)才执行命令2
! 表达式 #测试表达式是否为真或假
    4. case语句
   
实例1:
#根据传入参数执行相应函数
case "$1" in
    start)
	start #匹配到start时候执行的语句
	;;
    stop)
	stop    #匹配到stop时候执行的语句
	;;
    restart)
	restart    #匹配到restart时候执行的语句
	;;
    *)        #匹配其他情况
	echo "Usage:$0 {start|stop|restart}"
	exit 1
	;;
esac实例2:
#!/bin/bash
#获取当前的星期
NOW=$(date +%a)
case $NOW in
    Mon)
	echo "Full backup"
    ;;
    Tue | Wed | Thu | Fri)
	echo "Partial backup"
    ;;
    Sat | Sun)
	echo "No backup"
    ;;
    *) 
    echo "nothing to do"
    ;;
esac 
