我创建了一个游戏,用户在其中猜测程序随机创建的数字,并在成功猜测程序时询问用户名并将用户名和分数存储在文件中。 现在我要打印3个得分最低的球员的姓名和得分。
range=129
randNum=`expr $RANDOM % $range` # generates a random number between 0 and 128
score=0
printf "Enter a number: "
read num
while [ $randNum -ne $num ];
do
if [ $num -lt $randNum ]; then
printf "Low guess"
score=`expr $score + 1`
else
printf "High guess"
score=`expr $score + 1`
fi
printf "\nEnter a number: "
read num
done
read -p "Enter your name: " name
FILE="gameScores.txt"
echo "$name $score" >> $FILE
readFile=`cat $FILE`
# what should i do furthur to read from file sequentially and apply a condition for lowest scores
答案 0 :(得分:1)
尝试
sort -k 2,2n gameScores.txt | head -3
这将根据第二个字段中的分数对分数文件进行排序。然后,您只需打印出前3个分数,应该是您的最低分数。
希望这会有所帮助。