代码拉取完成,页面将自动刷新
#!/usr/bin/env bash
#########################################
# Auth: Alnk
# Date: 20180205
# QQ: 1029612787
# Version: v0.2.0
# Info: 抽奖小程序
#########################################
#定义抽奖人员名单,如果没有导入名单,此处为默认名单
array=(王浩 谢云生 黄科杨 何星宇 张宸兵 邓培林 刘桃 杨沛东 楚齐文 咸鱼 杨东 黄庭辉 郑少文 师靖 肖洪森)
#导入抽奖人员名单
if [[ $# -eq 1 ]];then
array=()
while read line;do
array=(${array[@]} ${line})
done <$1
fi
#多少人参与抽奖,此处的值就为多少减去1
sum=14
#定义保存中奖名单文件
log_file=log.txt
#debug
#如果log.txt日志文件存在则删除
if [[ -e "log.txt" ]];then
rm -f ${log_file}
fi
#中奖名单
zjmd=()
#抽奖的主函数
chou(){
echo -e "现在开始抽取${number}...\n"
i=0
while [[ $i -lt ${count} ]];do
#此处是随机抽取中奖人员语句
a=`seq 0 ${sum}|shuf|head -1`
win=${array[a]}
#判断该人员是否已经中奖,不可重复参与抽奖
#此处是判断一个元素是否存在于数组中
#这个是判断一个元素不存在于一个数组中
if [[ ${zjmd[@]/$win/} == ${zjmd[@]} ]];then
echo "${number}中奖名单:${win}">>${log_file}
echo "${number}中奖名单:${win}"
zjmd=(${zjmd[@]} ${win})
let i++
fi
done
echo ''
break
}
#查看中奖名单的函数
mingdan(){
echo ''
if [[ -e ${log_file} ]];then
echo "中奖名单如下:"
cat ${log_file}
else
echo "还没抽过奖哦"
fi
echo ''
break
}
#select语句,使用以下的提示符
PS3="请输入抽奖编号:"
#主循环
while true;do
select number in 一等奖 二等奖 三等奖 中奖名单 退出抽奖系统;do
case ${number} in
一等奖)
count=1 #中奖名额控制
chou
;;
二等奖)
count=2 #中奖名额控制
chou
;;
三等奖)
count=3 #中奖名额控制
chou
;;
中奖名单)
mingdan
;;
退出抽奖系统)
echo -e "退出抽奖系统!\n"
exit
;;
*)
echo -e "输入的编号有误,请重新输入编号!\n"
break
esac
done
done
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。