Skip to main content

simple progression bar for shell scripts

Project description

A simple progression bar by Yves-Gwenael Bourhis

Usage:
======

Class ProgBar(name, lenght):
----------------------------
name is a string
lenght is an integer which represents the number of elements in the bar

Methods:
========

start():
--------
Start the progression bar in a thread
the progression and thread stop automaticaly when the "percent" property reaches 100%

stop():
-------
Stop the progression bar and the thread
It is recommended to call the join() method after

fill():
-------
Add an element to the bar, and match the corresponding percentage

isAlive():
----------
Returns True if the bar's thread is running, False otherwise

join():
-------
Wait until the threaded bar terminates.
It is recomended to call this method after a stop() call


properties:
===========

percent:
--------
percentage of the bar progression


Example Using step progression::

>>> def printatestbar1():
... bar = ProgBar('test1', 20)
... bar.start()
... while bar.isAlive():
... time.sleep(0.1)
... bar.fill()
... bar.join()
>>> printatestbar1()
test1 [####################] 100%
>>>

Example Using percentage progression::

>>> def printatestbar2():
... bar = ProgBar('test2', 20)
... bar.start()
... while bar.isAlive():
... bar.percent += 1
... time.sleep(0.1)
... bar.join()
>>> printatestbar2()
test2 [####################] 100%
>>>

Example Interupting the progression bar::

>>> def printatestbar3():
... bar = ProgBar('test3', 20)
... bar.start()
... while bar.isAlive():
... bar.percent += 1
... if bar.percent == 50:
... bar.stop()
... break
... time.sleep(0.1)
... bar.join()
>>> printatestbar3()
test3 [##########- ] 50%
>>>



===============
Release Notes :
===============

Release 0.1:
============

First Version

Release 0.2:
============

Removed the destructor (__del__ method) because of:

+ The Warning here:
http://docs.python.org/reference/datamodel.html#object.__del__

+ Destroyed objects where not automaticaly removed by
the garbage collector as described here:
http://docs.python.org/library/gc.html#gc.garbage
Which could cause memory usage increase.

Release 0.3:
============

Changed author's contact info.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
progbar-0.3.zip (3.5 kB) Copy SHA256 hash SHA256 Source None Feb 17, 2012

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page