生成进度条-----progress_chars脚本
shell脚本实现
#!/bin/bash #******************************************************************** #Author: wei #QQ: 1655841639 #Date: 2020-08-25 #FileName: progress_chart.sh #URL: #Description: The test script #Copyright (C): 2020 All rights reserved #******************************************************************** function print_chars() { #传入的第一个参数指定要打印的字符串 local char="$1" #传入的第二个参数指定要打印多少次指定的字符串 local number="$2" local c for (( c=0;c < number;++c ));do printf "$char" done } COLOR=32 declare -i end=50 for (( i=1; i <= end ;++i));do printf "\e[1;${COLOR}m\e[80D[" print_chars "#" $i print_chars " " $((end - i)) printf "] %3d%%\e[0m" $((i * 2)) sleep 0.1s done echo
Python脚本实现
方式一 静态实现
res='' for i in range(50): res+='#' print('[%-50s]' % res) >>> res='' >>> for i in range(50): ... res+='#' ... print('[%-50s]' % res) ... [# ] [## ] [### ] [#### ] [##### ] [###### ] [####### ] [######## ] [######### ] [########## ] [########### ] [############ ] [############# ] [############## ] [############### ] [################ ] [################# ] [################## ] [################### ] [#################### ] [##################### ] [###################### ] [####################### ] [######################## ] [######################### ] [########################## ] [########################### ] [############################ ] [############################# ] [############################## ] [############################### ] [################################ ] [################################# ] [################################## ] [################################### ] [#################################### ] [##################################### ] [###################################### ] [####################################### ] [######################################## ] [######################################### ] [########################################## ] [########################################### ] [############################################ ] [############################################# ] [############################################## ] [############################################### ] [################################################ ] [################################################# ] [##################################################] >>>
方式二 动态显示,并添加百分比
# cat progress.py #!/bin/python3 # -*- coding: utf-8 -*- import time def progress(percent): if percent > 1: percent = 1 res=int(50 * percent) * '#' print('\r[%-50s] %d%%' % (res,int(100*percent)),end='') recv_size=0 total_size=6666 while recv_size < total_size: time.sleep(0.3) recv_size+=1024 percent=recv_size / total_size progress(percent) # python3 progress.py [##################################################] 100%