http://www.perlmonks.org?node_id=300517

hotshot has asked for the wisdom of the Perl Monks concerning the following question:

Hello all!

I'm using DBD::mysql to work with my mysql server and I have a script that queries on the DB and prints the result to screen, something like:
# connect to db # prepare query $query->execute(); while ($row = $query->fetch_hashref()) { print "ID: $row->{ID}, $row->{MSG_TEXT} ..... \n"; }
The problem is that my query usually returns a lot of rows (1000 or so), and the output is printed to screen without possability to track it. So I tried printing the result to a temporary file and less on the file (Linux less - like that I don't need to implement a pager), but if the output is very long it takes time to build the file and the user who runs the script waits until less kick into gear.
Is there in Perl a way I can start immediately displaying the output to console and still have paging capabilities?