ls name.txt &>/dev/null&&name=($(cat name.txt))||name=($(cat list.txt))
echo "欢迎来到我是歌手第$(cat count.txt)季,还有${#name[@]}位参赛歌手,请按任意键开始选择"
echo "****这次为大家献唱的是谁呢?我们一起倒数3秒钟****"
second=3
for i in $(seq $second -1 1)
do
echo -n "$i "
sleep 1
done
echo "会是谁呢?"
choice=$((RANDOM%${#name[@]}))
echo -e "有请歌手‘\033[1;31m${name[$choice]}\033[0m’登台"
if ((${#name[@]}>=3))
then
echo "还有$((${#name[@]}-1))位歌手,下次又会是谁呢,哈哈"
elif ((${#name[@]}==2))
then
echo "只剩下1位压轴歌手啦,万众瞩目的一天就要到了,嘻嘻"
else
echo -e "没得选了,就是有歌坛赵本山之称的‘\033[1;31m${name[$choice]}\033[0m’啦,我是歌手下季将重新开始哦"
fi
unset name[$choice]
((${#name[@]}==0)) && rm -rf name.txt &&echo $(($(cat count.txt)+1))>count.txt||echo ${name[@]} >name.txt
注意:
list.txt:歌手名单
name.txt:中间的媒介,用来排除每次唱过的歌手,保存还未唱过的歌手
count.txt:用来实现第N季,如果想要从第一季开始,则需要修改count.txt文件为1,随着季数增加,这个文件动态增加
本文出自 “爱武装一辈子” 博客,请务必保留此出处http://menglinux.blog.51cto.com/8733806/1437233
原文地址:http://menglinux.blog.51cto.com/8733806/1437233