shell实现简单的进度条
Posted 巴山雨夜
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell实现简单的进度条相关的知识,希望对你有一定的参考价值。
实现printf的有色输出:参考链接
实现代码:
#!/bin/bash
label=('|' '/' '-' '\\\\')
str=''
str1=''
str2=''
k=0 #表示百分比进度
for i in 1..100
do
str+=" "
done
for j in 0..200
do
let n=j%4
printf "\\033[1;47m%s\\033[0m [%d%%] [%c] \\r" "$str" "$k" "$label[$n]"
printf "\\033[1;46m%s\\033[0m\\r" "$str1"
printf "\\033[1;44m%s\\033[0m\\r" "$str2"
if [ $j -lt 100 ] ; then
str1+=' '
fi
if [ $j -ge 20 -a $j -lt 120 ] ; then
str2+=' '
let k++
elif [ $j -ge 120 ] ; then
break
fi
sleep 0.1
done
echo ""
实现结果:
以上是关于shell实现简单的进度条的主要内容,如果未能解决你的问题,请参考以下文章