FOSSPicks

Task monitor

progress

Almost since the beginning of Unix time, Unix command-line tools have done very little to show their output. The bearded wisdom is that if you can't see any output from a command, then nothing has gone wrong, and you can assume whatever task you started has completed successfully. If you need error and success states, look for exit values and act accordingly. This principle actually works very well, and it would be lovely if it was adopted by modern technology, such as REST websites and convergent mobile apps. But it does leave you with some ambiguity over whether something is still running, and if it is, how long until you can go to bed and turn off your PC.

This is where progress can help. It works with many of the GNU core utilities that most of us take for granted. These core utilities include cp, mv, dd, tar, gzip/gunzip, cat, and many more. You simply run them alongside the progress command, either after the watch command to present a general overview of core utility commands or forked after the execution of one specific command. For example, you can monitor the progress of the humble copy command with

cp old.iso new.iso newfile & progress -mp $!

with progress outputting the copy percentages as it completes. This is useful if you're copying large data files to a slow USB storage device on the command line, such as from a Raspberry Pi. Because it's simply monitoring the /proc filesystem for inputs and outputs on commands it knows, progress then probes proc to discover the status of those commands. It's a simple solution, but it works well and can be used in a huge variety of tasks, from monitoring a file or web server to the download status of something you've clicked in Firefox.

Project Website

https://github.com/Xfennec/progress

progress works with most core utility compliant commands on the Linux command line.

VPN

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • FOSSPicks

    This month Graham fires up MuseScore 3.0, hexyl, weborf, Chrono, and several other useful Linux tools.

  • Gnome Fonts

    Linux’s text display still suffers from legacy issues, but it is well on the way to

    recovering. This article explains how Fontconfig, X, and Gnome work together for

    a brighter future.

  • FOSSPicks

    Graham looks at Graphite, retrogram~rtlsdr, Piano Forte, OneTrick SIMIAN, The Command Line Murders, and more!

  • FOSSPicks

    After vowing to not be impressed by AI-generated images, Graham has spent this month communing with Stable Diffusion like it's some locally installed oracle or prophet of truth.

  • Command Line – Font Conversion

    Perform trouble-free font conversions from the command line with an easy-to-use script.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More

News