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.

Source Distribution

progbar-0.3.zip (3.5 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page