#!/usr/bin/perl -w use strict; my $file = "path to my file"; open (FH, "< $file") or die "Can't open $file for read: $!"; my @data = ; close FH or die "Cannot close $file: $!"; my %count_hash; for my $line (@data) { $count_hash{$line} ++; } for my $line (sort { length $a <=> length $b || $count_hash{$b} <=> $count_hash{$a}} keys %count_hash) { print "$line\t$count_hash{$line}\n"; }