perl -MO=Deparse -lane "$r{$F[0]}+=$F[1]}{print qq($_\t$r{$_})for sort{$r{$b}<=>$r{$a}||$a cmp $b}keys %r" BEGIN { $/ = "\n"; $\ = "\n"; } # provided by: perl -l LINE: while (defined($_ = readline ARGV)) { # provided by: perl -n (cycling files in a loop but Not printing lines) chomp $_; # also provided by: perl -l our @F = split(' ', $_, 0); # provided by: perl -a for Auotosplit, it puts stuff into @F automatically $r{$F[0]} += $F[1]; } # eskimo greeting.. { # ..see perlsecret print "$_\t$r{$_}" foreach (sort {$a cmp $b unless $r{$b} <=> $r{$a};} keys %r); } -e syntax OK