A fast, extensible CLI progress bar
tqdm means "progress" in Arabic (taqadum, تقدّم) and is an
abbreviation for "I love you so much" in Spanish (te quiero demasiado).
Instantly make your loops show a smart progress meter and stats - just replace any pipe "
|" with "
| tqdm |", and you're done!
$ seq 9999999 | tqdm --bytes | wc -l
75.2MB [00:00, 217MB/s]
$ 7z a -bd -r backup.7z docs/ | grep Compressing | \
tqdm --total $(find docs/ -type f | wc -l) --unit files >> backup.log
100%|███████████████████████████████▉| 8014/8014 [01:37<00:00, 82.29files/s]
Overhead is low -- about 60ns per iteration.
In addition to its low overhead,
tqdm uses smart algorithms to predict
the remaining time and to skip unnecessary iteration displays, which
allows for a negligible overhead in most cases.
tqdm works on any platform (Linux, Windows, Mac, FreeBSD, NetBSD,
Solaris/SunOS), in any console or in a GUI, and is also friendly with
tqdm does not require any dependencies, just
an environment supporting
carriage return \r and
line feed \n control characters.