shell中while语句
while循环是shell中最简单的一种循环,当条件满足时,就会执行。当条件不满足的时候,就会退出while循环
用法如下
while condition
do
statement
done
#do与done都是shell中的关键词,condition是条件,statement是执行语句,可以有一条,也可以有多条
注意:如果一开始条件就不满足,则程序不会进入循环体,do与done之间的语句没有执行的机会
例1:
#!/bin/bash
#计算从m到n的值
read m
read n
sum=0
while((m<n))
do
((sum+=m))
((m++))
done
echo "the sum is: $sum"
例2:
创建用户westos{1…20},并修改密码为123456
[root@server19 mnt]# vim while.sh
#!/bin/bash
PREFIX="westos"
i=1
while [ $i -le 20 ]
do
useradd ${PREFIX}$i
echo "123456" | passwd --studin $[PREFIX]$i &> /dev/null
((i++))
done
[root@server19 mnt]# ls /home/
student westos11 westos14 westos17 westos2 westos4 westos7
westos1 westos12 westos15 westos18 westos20 westos5 westos8
westos10 westos13 westos16 westos19 westos3 westos6 westos9
shell中的until语句
until循环和while循环恰恰相反,当条件不成立的时候,进行循环。当条件成立的时候,则终止循环
until的使用场景很少,一般使用while即可
用法如下:
until condition
do
statements
done
condition表示判断条件,statement代表执行的语句
#!/bin/bash
i=1
sum=0
until ((i>100))
do
((sum +=i))
((i++))
done
echo "The sum is: $sum"