Bash 在';对于循环';在狂欢节上

Bash 在';对于循环';在狂欢节上,bash,loops,for-loop,Bash,Loops,For Loop,我正在尝试使用以下中的#REPLY输入变量来执行下面的循环代码 如果我对{60..0}中的I使用之类的语法,那么它就可以正常工作;在{$REPLY..0}中尝试读取语句“for i”中的输入变量失败。读操作似乎无法将输入识别为整数值;有人能帮忙吗?谢谢 #/bin/bash 清楚的 t输出杯5 阅读-p“秒数是多少?” echo“已开始:”$(日期) 回声“” 回声“” 回声“倒计时器” 回声“” 对于{$REPLY..0}中的i 做 tput杯10美元1 printf“%dh:%dm:%ds\

我正在尝试使用以下
中的
#REPLY
输入变量来执行下面的
循环代码

如果我对{60..0}
中的I使用
之类的语法,那么它就可以正常工作;在{$REPLY..0}中尝试读取语句“for i”中的输入变量失败。读操作似乎无法将输入识别为整数值;有人能帮忙吗?谢谢

#/bin/bash
清楚的
t输出杯5
阅读-p“秒数是多少?”
echo“已开始:”$(日期)
回声“”
回声“”
回声“倒计时器”
回声“”
对于{$REPLY..0}中的i
做
tput杯10美元1
printf“%dh:%dm:%ds\n'$($i/3600))$($i%3600/60))$($i%60))
特普特西维斯酒店
睡眠1
完成
tput cnorm
回声“”
echo“完成:”$(日期)

是的,不能在大括号展开中使用变量。因此,解决方案是简单的算术形式循环:

for ((i=REPLY; i>=0; i--)); do
    [...]


…和,请不要用邪恶的
评估回答
,谢谢这回答了你的问题吗?这很有效,非常感谢您的大力帮助。对新来者的建议:如果答案解决了您的问题,请单击大复选标记接受它(✓) 在它旁边,也可以选择向上投票(向上投票需要至少15个信誉点)。如果您发现其他答案有帮助,请向上投票。接受和向上投票有助于未来的读者。请参阅