我有一个bash脚本,结尾如下:
trap "exit" INT
for ((i=0; i < $srccount; i++)); do
echo -e "\"${src[$i]}\" will be synchronized to \"${dest[$i]}\""
echo -e $'Press any key to continue or Ctrl+C to exit...\n'
read -rs -n1
#show_progress_bar()
rsync ${opt1} ${opt2} ${opt3} ${src[$i]} ${dest[$i]}
done
我需要一个命令或函数,例如show_progress_bar()
,在.
命令运行时每隔一秒在标准输出中放置rsync
(一个点)(或/
在/ - \ |
运行时以rsync
顺序旋转)。
可能吗?我是否需要自己编写此类函数,或者是否有可用于此目的的脚本?
答案 0 :(得分:0)
它不漂亮,但它有效:
~$ while true; do echo -n .; sleep 1; done & sleep 3; kill %-; wait; echo;
[1] 26255
...[1]+ Terminated while true; do
echo -n .; sleep 1;
done
(为你的实际工作交换“睡眠3”)
它的工作原理如下:
编辑:例如,就像这里的答案一样:Using BASH to display a progress (working) indicator