Print a wget style progress bar. Inputs should be self explanatory
do{ print progress_bar( $_, 100, 25, '=' ); sleep 1 } for 1..100;
# get a progress bar string, inputs should be self explanatory otherwi
+se just RTFS!
sub progress_bar {
my ( $got, $total, $width, $char ) = @_;
$width ||= 25;
$char ||= '=';
my $num_width = length $total;
sprintf "|%-${width}s| Got %${num_width}s bytes of %s (%.2f%%)\r",
+
$char x (($width-1)*$got/$total). '>', $got, $total, 100*$got/
+$total;
}
__DATA__
|==========> | Got 42 bytes of 100 (42.00%)