if命令:
格式:if 条件|命令;then
命令
elif 条件|命令;then
命令
else;then
命令
fi
case命令:
格式: case $var in
pattern1)
命令
;;
pattern2)
命令
;;
esac
for命令:
格式:for i in list
do
commands
done
举例:list="Zhangsan Lisi Mike Tom"
for i in $list
do
echo "Name is $i"
done
输出的结果将是
注意,跟其他的编程语言不太一样,shell编程中直接将一串字符赋值给一个变量时,如上面的list="Zhangsan Lisi Mike Tom",shell中会将空格或者Tab键识别为一个分隔符,因此这里的list可直接看作一个字符串数组
如果想改变默认的分隔符,可以利用IFS变量来确定需要的分隔符
例如:
#!/bin/bash
#
IFS=":"
list="Zhangsan Lisi Mike Tom"
for i in $list
do
echo "Name is $i"
done
那么,后续的shell会将:看作分隔符,因此结果将是
while命令(一直到条件不满足command时会终止循环)
格式:while command
do
commands
done
until命令(与while相反,一直到条件满足时,就会终止该循环)
格式:until command
do
commands
done