#!/usr/bin/perl use strict; use sort 'stable'; my %dict; while (<>) { my @words = split; foreach my $word (@words) { ++$dict{$word}; } } my @keys = sort { $dict{$a} <=> $dict{$b} } sort keys %dict; foreach my $k (@keys) { print "$dict{$k}\t$k\n"; }