use strict; use warnings; open my $file, '<', shift; binmode($file); my %seen = (); while ( read( $file, my $buf, 1 ) ) { if ( !$seen{$buf} ) { $seen{$buf} = 1; } else { $seen{$buf}++; } } print "$_ - $seen{$_}\n" for ( keys %seen );