Hi All, 

I put together a new interactive tool for monitoring program output,
particularly the output of programs which run indefinitely and continuously
produce output. 

https://www.kylheku.com/cgit/pw/about/ (you can see a couple of videos here) 

pw continuously reads its standard input and pumps it through an internal
line-oriented FIFO, which is sampled to produce display on your terminal. Some
nice features are built around that basic idea. 

pw is integrated with POSIX job control. It knows when it is in the background
process group, and in that state it keeps reading and processing without
updating the display. The upshot of this is that you can easily juggle multiple
long-running programs that produce output, if you redirect all of them to to
different backgrounded instances of pw. Any time you want to know what is going
on with any one of them, just bring it into the foreground to look at the pw
display; then Ctrl-Z it into the background and let it run again with "bg".

The whole thing is under 2000 lines of C in one source file, BSD-licensed.
Since it doesn't retain the bulk of the data passing through it, it runs in
a small amount of memory. 

Cheers ..

Reply via email to