你是指这个脚本的意思吗?
那我把意思解释如下咯:
#!/bin/bash #调用bash来执行程序
for i in $( seq 1 54) #初始化牌
do
ok[$i]=1
done #for循环用于把54个牌都初始化为1
max=0 #初始化赢家
for i in $(seq 1 4) #游戏开始
do
echo "Player $i" #玩家i 的回合
a=$((RANDOM%53+1)) #抽牌
while [[ ${ok[$a]} -eq 0 ]];
do
a=$((RANDOM%53+1))
done #随机生成一张牌,1-54间
ok[$a]=0
if [ $a -gt $max ]; then #if语句表示大于max这张牌的,就赋值给max,下表给num,下标表示第几张牌
max=$a
num=$i
fi
HuaSe=$((a%4)) #生成花色
case $HuaSe in #case语句得余数来表示花色
0)HS='C';; #草花
1)HS='D';; #方块
2)HS='H';; #红心
3)HS='S';; #黑心
esac
DaXiao=$((a/4+1)) #生成牌值
case $DaXiao in #这部分是来生成对应的牌
2|3|4|5|6|7|8|9|10) echo $HS$DaXiao;;
11)echo $HS 'J';;
12)echo $HS 'Q';;
13)echo $HS 'K';;
1 )echo $HS 'A';;
14)echo 'small JOKE ';; #小王
15)echo 'big JOKE ';; #大王
esac
read ll
done
echo "Player $numwin !" #游戏结果,这里写错了,怎么出现个numwin变量,中间有空格吧
很多地方写的有问题,少了一个部分,如果硬要说这个脚本是要干嘛的话,后面大部分是输出那张牌,有用的就是if语句,就是找到一个大于max的牌,但是后面怎么出现了个read,唉,你想干嘛私聊我吧,我直接教你做