循环语句-for
格式1
for 变量 in 数值 数值 数值 ..... #每次循环一次带入一个数值
do
执行语句
done
#常用使用循环
格式2
for (( 变量=数值;变化变量值条件<=数值;变化变量=变量+数值)) #第一次循环变量的值带入,第二次循环变量的值就是变化变量的值但是这个是必须符合条件
do
执行语句
done
#适合数学运算
#!/bin/bash
例子:openstack自动备份
source /root/admin
a=$(cat /root/openstack_list)
for i in $a ; do
openstack server backup create $i
done
例子:删除u开头的用户
#!/bin/bash
a=$(cat /etc/passwd | grep "/bin/bash" | cut -d : -f 1 | grep "^u")
for i in $a ; do
userdel $i
done
while循环
只要条件成立就一直循环下去,适合运算,循环体内需要判断条件失败,防止形成死循环
格式
while [ 条件判断 ] ; do
执行语句
done
例子:1+到100等于多少
#!/bin/bash
i=1
sun=2
while [ $i -le 100 ] ; do
sun=$(($sun+$i))
i=$(($i+1))
echo "$sun"
done
until循环
与while循环相反,只要条件不成立就一直循环下去,成立就结束
格式
until [ 条件判断 ] ; do
执行语句
done
三种特殊控制语句
- exit [ ]:结束脚本执行,并返回值,返回值可以给到管理员进行判断
- 返回值通过$?查看
- break:退出整个循环体
- continue:结束本次循环