我在Linux Mint中运行一个shell脚本,调用一些进程只需几分钟.
对于每个进程,我想回显这样的消息:
echo "Cleaning temporary files... X seconds."
myprocess
其中X是当前经过的时间,我希望它每秒更改一次,但不打印新行.
最佳答案
在脚本开头使用它,这将创建一个在后台运行并继续更新状态的子进程.
file=$(mktemp)
progress() {
pc=0;
while [ -e $file ]
do
echo -ne "$pc sec\033[0K\r"
sleep 1
((pc++))
done
}
progress &
#Do all the necessary staff
#now when everything is done
rm -f $file