#!/usr/bin/gawk -f BEGIN { FS = "" } { for (i = 1; i <= NF; ++i) if ($i ~ /[[:alpha:]]/) ++c[$i] } END { asorti(c, fl) for (i = 1; i in fl; ++i) printf("%s %d\n", fl[i], c[fl[i]]) }