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 details)

Uploaded Source

File details

Details for the file progbar-0.3.zip.

File metadata

  • Download URL: progbar-0.3.zip
  • Upload date:
  • Size: 3.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for progbar-0.3.zip
Algorithm Hash digest
SHA256 9f30c0fe98d8eeb74180530b56775cab234bd092247e41358d85bcc87516c235
MD5 775a4d48c35ca1ea7b24b6189da2de2f
BLAKE2b-256 c6d784b6eadb130e12383470401dd4f809f1893baf58a8a5316ea3de8fd1740a

See more details on using hashes here.

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