|laziness, impatience, and hubris
Re: How to UPDATE rather than append to STDOUT?by maverick (Curate)
|on Jun 05, 2002 at 15:09 UTC
On any of the various Un*x you can use this code. This may work on windows as well (dunno, I don't use it)
The first line turns off buffering, I suspect you want to see the numbers increment exactly as they happen.
Use "\r" to send the cursor back to the beginning of the line. If you use \b to backspace one character, you'd have to keep up with how long $i has become, and/or add/remove \b's if you change the text of your status line. Send the cursor to the front of the line, reprint the whole thing and be done with it.
Print a \n at the bottom of the loop. Otherwise your terminal prompt (or the next line of output) will get displayed at the end of the last status line and just look plain weird (especially if it starts with a number :) ).