返回顶部

生成进度条-----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%

 

posted @ 2020-08-25 14:09  九尾cat  阅读(203)  评论(0编辑  收藏  举报