shell编程3 ---流程控制语句
shell编程流程控制语句
一、if流程控制语句
1、单分支if条件判断语句
if [ 条件判断式 ];then 或者 if[ 条件判断式 ]
程序 then
fi 程序
fi
2、多分支if条件判断语句
if [ 条件判断式 ] 或者 if [ 条件判断式1 ]
then then
条件成功时执行的程序 当条件一成立时执行程序一
else elif [ 条件判断式2 ]
条件不成功时执行的程序 then
fi 当条件二成立时程序二
...省略更多条件
else
所有条件都不成立时执行此程序
fi
二、case语句
1、与if elif else 语句一样都是多分支判断语句,只不过和其不一样之处在于case只能判断一种条件关系而if可以判断多种条件关系。
2、case $变量名 in
“值1”)
如果变量值等于值1需要执行的程序
;;
“值2”)
如果变量值等于值2需要执行的程序
;;
省略其他值
*)
如果变量值什么值都不等于需要执行的程序
;;
esac
三、for循环变量
1、语法1 2、语法2
for 变量 in 值1 值2 ... for ((初始值;循环控制条件;变量变化))
do do
执行变量的程序 执行变量的程序
done done
四、while循环与until循环
1、while语法 2、until语法(与while相反。只要不成立就会一直执行下去)
while [ 条件判断式 ] until [ 条件判断式 ]
do do
执行程序 执行程序
done done
补充:a=1
echo $a | sed 's/^[0-9]*$//g' (如果原数据为数字则替换为空,用于判断原数据是否为数字)