在某些情况下,可能需要从Bash脚本中执行长时间运行的命令。最简单的方法为直接输出“Loading… ”的消息,但这种静态消息对用户和开发人员来说不是很友好,下面给出两种简单动画示例。
第一种:
function task1(){
sleep 5 &
pid=$!
frames="/ | \\ -"
while kill -0 $pid 2&>1 > /dev/null;
do
for frame in $frames;
do
printf "\r$frame Loading..."
sleep 0.5
done
done
printf "\n"
}
第二种:
function task2(){
sleep 5 &
pid=$!
frames=". .. ..."
while kill -0 $pid 2&>1 > /dev/null;
do
for frame in $frames;
do
printf "\rLoading$frame "
sleep 0.5
done
done
printf "\n"
}