我想在我的终端提示上放一个计数器。我以分钟为单位从命令行传递了一个值。它计算屏幕上的秒数,不带换行符,换句话说,它显示0、1、2、3等...但覆盖先前的数字。我怎样才能做到这一点?下面的脚本每秒进行换行。
#!/bin/bash
i=0
seconds=$1*60
while (( $i < $seconds ))
do
echo $i
sleep 1
((i++))
done
您可以使用*
运算符调整宽度:
while (( i < seconds )); do
printf "\r%*d" ${#seconds} $i
sleep 1
((i++))
done