#!/bin/bash
for i in $(seq $1)
do
echo -n '.'
sleep 1
done
echo
脚本根据用户的输入每秒打印一个点并在屏幕上显示点数。我想要做的是,当我按下某个键(例如,a)时,脚本将在半秒内像一个点一样运行得更快。因此,按下同一个键时,它运行得越快。如何在脚本运行时处理循环输出
#!/bin/bash
for i in $(seq $1)
do
echo -n '.'
sleep 1
done
echo
脚本根据用户的输入每秒打印一个点并在屏幕上显示点数。我想要做的是,当我按下某个键(例如,a)时,脚本将在半秒内像一个点一样运行得更快。因此,按下同一个键时,它运行得越快。如何在脚本运行时处理循环输出
使用变量作为sleep
的持续时间:
duration=1
# ... inside loop:
sleep $duration
# ...
然后每次sleep
结束通话,有一些代码来检查新的按键,并根据需要改变的$duration
值。
在另一个说明中,根据sleep
的版本,您可以使用它,它可能不支持小数参数,因此您可能必须使用单独的程序,如usleep
。
所以你想在脚本已经运行时交互调整睡眠时间? – Saucier
这是正确的:D你能帮助我吗? – Cailou