while循环语句
特点:条件为真进入循环,为假退出循环
while 表达式
do
command...
done
while [ 1 -eq 1 ] 或者 (( 1 > 2 ))
do
command...
done
i=1
while (( $i <= 10))
do
echo $i
let i+=2
done
- 脚本计算1-50的偶数和
#!/bin/bash
sum=0
i=2
while [ $i -le 50 ]
do
let sum=$sun+$i
let i+=2 或者 $[$i+2]
done
echo $sum
- 脚本同步系统时间
#!/bin/bash
NTP=10.1.1.1
count=0
while true
do
ntpdate $NTP &>/dev/null
if [ $? -ne 0 ];then
echo "system date failed" |mail -s "check system date" root@localhost
else
let count++
if [ $count -eq 100 ];then
echo "system date success" |mail -s "check system date" root@localhost && count=0
fi
fi
sleep 30
done
jobs
#结束后台运行的第一个程序
kill -9 %1
until循环
条件为假就进入循环,为真就退出循环
until expr [ 1 -eq 1 ] (( 1 >= 1 ))
do
command
done
i=1
until [ $i -gt 5 ]
do
echo $i
let i++
done
##1 2 3 4 5
- 批量创建用户
stu1-stu10
前五个指定uid1001-1005
后五个指定家目录为/zss
#!/bin/bash
i=1
until [ $i -gt 10 ]
do
if [ $i -lt 5 ];then
useradd -u $[1000+$i] stu$i
echo "123" | passwd --stdin stu$i
else
[ ! -d /zss ] && mkdir /zss
useradd -d /zss/stu$i stu$i
echo "123" | passwd --stdin stu$i
fi
let i++
done