Skip to main content

ETA Progress bar for command-line utilities

Project description

ETA
===

This is a python package that will create progress bars for command-line programs.

Example usage:

from eta import ETA
eta = ETA(ticks)
for foo in bar:
eta.print_status()
eta.done()

Or, file based usage (calls tell() to get progress)

fobj = open(fname)
eta = ETA(os.stat(fname).st_size, fileobj=fobj)

for line in fobj:
eta.print_status(extra="extra message")
...
eta.done()

The output is something similar to:

20.0% - 0:04 [====> ] ETA: 0:17 (Optional messages go here)

The default is to only display the progress bar *if* stderr is connected to a
terminal (sys.stderr.isatty() is True). If you want to always enable the
progress bar, you need to set the evironmental variable 'SHOW_ETA'.

To hide the progress bar (for use in other batch scripts), you can hide the
progress bar by setting the environmental variable 'HIDE_ETA'.

The default is to update the progress bar every 0.2 sec, unless we aren't
attached to a tty (and SHOW_ETA is set). If we aren't attached to a TTY, then
no status messages are output to stderr at all.

There is also a socket based ETA implementation that will listen to the file
/tmp/eta-$pid. If you try to read this file, it will display all of the relevant
ETA information for the current process. You can (obviously) only have one active
Socket ETA object for each process. You can start this ETA object by setting
an environmental variable 'SOCKET_ETA'.

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

eta-0.9.8f.tar.gz (4.0 kB view details)

Uploaded Source

File details

Details for the file eta-0.9.8f.tar.gz.

File metadata

  • Download URL: eta-0.9.8f.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for eta-0.9.8f.tar.gz
Algorithm Hash digest
SHA256 1bb020f58dcb910f672a82bfeba8e7384ca1f91fb7739c146b9f7b5458ffc54b
MD5 93de1303bed03c37957fc4a72c648a2c
BLAKE2b-256 dffbe93cd79bfe5137a760e381235ec50882d9b9c12ed46b05f5bba7773a2099

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