首页 > 解决方案 > 如何计算在 shellscript 上执行 while 循环的次数

问题描述

这是我的代码

我想让它显示 while 已执行的时间并在最后用回显报告

#!/bin/bash
randomnum=$(($RANDOM%100))
echo "Try to guess the number"
read num                                                                
while [ $num -ne $randomnum ] ; do
        if [ $randomnum -gt $num ]; then
        echo "Number you look for is higher"
        elif [ $randomnum -lt $num ] ; then
        echo "number you looking for is lower"
        else
        echo "Input nonsense
        fi                                                                      
read num
done
echo "¡BINGO¡"
exit

标签: shell

解决方案


您是否正在寻找一种优雅的方式将变量增加 1?加 1 是可以接受的。

((i=i+1))

或者

((i++))

这当然意味着添加额外的代码行。我了解您想要循环迭代的次数,而不是指令数或总行数。

你有一个“启动阅读”,但你没有在下一次尝试中再次阅读循环体的低位,你的问题没有解决这个问题,但这对你来说可能很重要。


推荐阅读