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