while循环:重复测试某个条件,只要条件成立反复执行
条件可以是:测试表达式,也可以是布尔值true(条件永远为真)和false(条件永远为假)
vi useradd_while.sh ##将下面脚本改写为新建用户的脚本
#!/bin/bash
PRE=stu
i=0
while [ $i -le 10 ];
do
useradd $PRE$i
echo 123123 |passwd --stdin $PRE$i
userdel -r $PRE$i
i=$(expr $i + 1)
let i++
done
:wq
1、函数RANDOM、let、exit:
RANDOM是生成随机数的一个函数
echo $RANDOM ##生成随机数
ehco $RANDOM % 100 ##获取100内的随机数
echo $RANDOM % 1000 ##获取1000内的随机数
let命令的作用是对变量进行自加减操作:
i=1
let i++
echo $i
let i++
echo $i
let i--
echo $i
expr $i + 1 #体会体会
综合应用: 定义一个随机值为真,你输对了才停下来,看看你几次能输对
vi banji.sh
#/bin/bash
P=$(expr $RANDOM % 1000)
T=0
echo "please insert a number like this(1-999)"
while true;do
read -p "please give number:" INT
let T++
if [ $INT -eq $P ];then
echo "your luckly. right!"
echo $T
exit 0 ##当你输对了则退出程序脚本
elif [ $INT -gt $P ];then
echo "Too High"
else
echo "Too low"
fi
done
:wq
2、区分exit,break
exit退出程序(脚本),break只是退出循环体
vi while.sh
#!/bin/bash
i=0
j=$(expr $RANDOM % 10)
while true;do
echo $i
let i++
sleep 1 ##休眠1秒避免死循环产生,可以去掉试试
if [ $i -eq $j ];then
echo "ok,$j random"
break ##将break替换成exit看看效果
fi
done
df -hT
:wq