抽奖shell小脚本
原理就是生成随机数,取数字最大的前5名
#!/bin/bash
#sehn
>/tmp/name.txt
random() {
#生成随机数
random="$((RANDOM%100))"
}
name() {
read -p "请输入你的名字:" name
if [ "$name" = "exit" ]; then
#输入exit后退出程序
break
fi
#将输出结果重定向到/tmp/name.txt文件中
#tee -a:附加到后面,不会覆盖原有数据
echo -e "$random\t\t$name" | tee -a /tmp/name.txt
}
main() {
while true
do
#为真,调用函数
random
name
done
echo "抽奖结束,中奖的是:"
#将name.txt文件第一列从大到小排序,取前5行
sort -rn -k1 /tmp/name.txt | head -5
}
main
跑一下试试