- This seems in order: sub fmt_percent { sprintf("...", $_[0] }
- I would try to do away with most of the file scoped vars (my $tt) etc, by trying to consolidate the logic that drives them into single expressions... I find that reading an expression in one go has more of a mnemonic effect than many variables which are similar in nature. This only works to some extent, though.
- I like your use of grep in scalar context
- I don't like your use of print-like-a-function.... You can omit the parens.
- I'm not sure, but maybe my @files = glob("/var/log/maillog*") is in order
Aside from that, this is good code, readable, well structured, and so forth. I'm assuming it was formatted more structuredly before it was posted ;-)
Ciao!