1、for:读取不同的变量值,逐个执行同一组命令,直到取值完毕退出,变量值以空格分隔
语法:
for 变量值 in 取值列表
do
命令序列
done
2、while:重复测试某个条件,成立则执行,进入下一个循环,直到条件不成立为止
语法:
while 【条件测试 】
do
命令
添加更改测试条件语句
done
例:批量添加用户(stu1~stu20)
prefix=“stu”
i=1
while 【 $i -le 20 】
do
useradd ${prefix}$i
echo “123456” | passwd --stdin ${prefix}$i &> /dev/null
let i++
done
while条件为true:代表永远为真,死循环,必须使用exit或break命令才结束循环
必须进行递增,避免死循环:方法:
Let i++ let i=i+1 i=`expr i+1`
3、case:针对变量的不同取值,分别执行不同的命令序列
语法:
case 变量值 in
模式1)
命令序列1
;;
模式2)
命令序列2
;;
……
*)
默认命令序列
esac
取值时,中括号【】,代表任选其一 ,横杠 - ,代表取值范围,竖杠 | ,代表或者