linux shell实现进度条(2018-06-12)

2018-06-12  本文已影响0人  TerryTsai

参考了一些网上的资料,自己整理编写了一段shell下实现进度条的办法。

#!/bin/bash
ProgressBar()
{
  local current=$1; local total=$2
  local now=$((current*100/total))
  local last=$(((current-1)*100/total))
  [[ $((last % 2)) -eq 1 ]]&&let last++
  local str=$(for i in `seq 1 $((last/2))`; do printf '#'; done)
  for ((i=$last;$i<=$now;i+=2));do printf "\r[%-50s]%d%%" "$str"  $i;sleep 0.02;str+='#';done
}
for  n in `seq 1 100`
  do
  ProgressBar $n 100
  done
echo

printf 参考

上一篇 下一篇

猜你喜欢

热点阅读