脚本要求:1、随机抽点80以内的随机证书;
2、可以一次抽取多个随机数;同时间抽取的随机数要唯一;
3、被抽取之后的随机数,之后不会再抽取;
4、可以重置。
脚本构建图解:
脚本实现:
#!/bin/bash
#Author:chenxu
#Date:2017-05-07
#Descritptions:
rand_num(){ #定义点名函数
[[ -d /app ]]||mkdir /app
touch /app/temp > /app/temp
[[ -f /app/temp.bak ]]||touch /app/temp.bak
echo 24 >> /app/temp.bak
read -p “input number: ” x
while [ `sort /app/temp |uniq|wc -l` != $x ] #定义一次抽点的人数的规则
do
m=$(($RANDOM %80+1))
n=`grep ^$m$ /app/temp.bak`
if [ -z $n ];then
echo $m && echo $m >>/app/temp.bak && echo $m >>/app/temp
else
continue
fi
done
rm -rf /app/temp
}
read -p “you can choose start|re_start|quit: ” name
case $name in
start)
实验总结:1、构建实验脚本逻辑结构;
2、灵活实现逻辑结构;
3、多去实验,不断修改,有问题可以尝试换个思路去解决。
原创文章,作者:chenxu@magedu.com,如若转载,请注明出处:http://www.178linux.com/74996