sub format_kilo # Kilo, mega and gig { my $number = shift; my $fixwidth = shift; my $suffix = " "; if ($number > 0x40000000) { $number /= 0x40000000; $suffix = 'G'; } elsif ($number > 0x100000) { $number /= 0x100000; $suffix = 'M'; } elsif ($number > 0x400) { $number /= 0x400; $suffix = 'K'; } # Split integer and decimal parts of the number and add commas my $integer = int($number); # Add Leading spaces if fixed width $fixwidth and $integer = ' ' x ($fixwidth - length($integer) - length($suffix)) . $integer; # Combine it all back together and return it. return $integer.$suffix; } ##### Calling sequence ### my ($filename, $filebytes); $filename = "Your file name here...."; $filebytes = -s $filename; print "Opening File=$filename; (". format_kilo($filebytes) . " [=$filebytes] bytes)\n";