Yani bir kaçırdığınızı dışında hemen hemen "N en yaygın şeyler" bulmanın en yaygın yolu var sortve bir gratuitious var cat:
tr -c '[:alnum:]' '[\n*]' < test.txt | sort | uniq -c | sort -nr | head -10
Daha sortönce uniq -c girmediyseniz, muhtemelen birçok yanlış tekil sözcük elde edersiniz. uniqGenel olarak tek bir dizide değil, sadece benzersiz satır çizgileri yapar.
EDIT: Bir numara unuttum, "kelimeleri durdur". İngilizce metne bakıyorsanız (üzgünüm, tek dilli Kuzey Amerika burada), "", "ve", "gibi kelimeler neredeyse her zaman ilk iki ya da üç sırayı alır. Muhtemelen onları ortadan kaldırmak istiyorsun. GNU Groff dağıtımında adında eignbir durma kelimelerinin oldukça iyi bir listesini içeren bir dosya vardır . Benim Arch dağıtıma sahip /usr/share/groff/current/eign, ama ben de gördüğüm düşünüyorum /usr/share/dict/eignveya /usr/dict/eigneski Unix'ler içinde.
Bu gibi dur sözcükleri kullanabilirsiniz:
tr -c '[:alnum:]' '[\n*]' < test.txt |
fgrep -v -w -f /usr/share/groff/current/eign |
sort | uniq -c | sort -nr | head -10
Tahminime göre çoğu insan dili, anlamlı kelime sıklığı sayımlarından çıkarılmış benzer "durma kelimeler" e ihtiyaç duyuyor, ancak başka dillerin kelime listelerini durdurmasını nereden önereceğimi bilmiyorum.
EDIT: tüm kelime eşleşmesini sağlayan komutu fgrepkullanmalıdır -w. Bu, "a" veya "i" gibi, yalnızca kısa duraklama eserleri içeren sözcüklerdeki yanlış pozitifleri önler.