Created by
kamome Mew
last modified
| #!/bin/bash
progress_bar () {
# progress_bar progress_now [progress_max] [comment]
# maxに指定なければ progress_max = 100 に固定
if [ $3 ] ;then
progress_max=$2
comment=$3
else
if expr "$2" : '[0-9]*' > /dev/null ; then
progress_max=$2
else
comment=$2
fi
fi
progress_now=$1
progress_max=`expr "$progress_max" \| 100`
comment=`expr "$comment" \| "Processing..."`
progress_size=40
progress_per=`echo "$progress_now" \* 100 / "$progress_max" |bc`
progress_currentnum=`echo "$progress_now"*"$progress_size"/"$progress_max"|bc`
progress_arrow="";progress_space=""
for i in `seq $progress_currentnum`;do
progress_arrow="$progress_arrow="
done
progress_countspace=`echo $progress_size-$progress_currentnum|bc`
for i in `seq $progress_countspace`;do
progress_space="$progress_space "
done
printf "$comment[$progress_arrow>$progress_space] $progress_per%%\r"
if [ $progress_max -eq $progress_now ];then
printf "$comment[$progress_arrow>$progress_space] completed.\r"
echo
fi
}
#for i in `seq 100`
#do
# progress_bar $i 処理中
# sleep 0.05
#done
#progress_bar 2 1
|