GNU/Linux >> Belajar Linux >  >> Linux

Dapatkan File Teks Jumlah Kemunculan Kata Dari Semua Kata &Hasil Cetak Diurutkan?

Saya memiliki perintah yang akan bekerja melalui file teks, menghitung semua kemunculan kata-kata dan mencetaknya seperti ini:

[email protected] $˜ magic-command-i-forgot | with grep | and awk | sort ./textfile.txt
66: the
54: and
32: I
16: unix
12: bash
5:  internet
3:  sh
1: GNU/Linux

Jadi itu tidak mencari baris demi baris, tetapi kata demi kata, dan ia melakukannya untuk semua kata, bukan hanya untuk 1 kata. Saya telah menemukannya di suatu tempat di internet sejak lama, tetapi saya tidak dapat menemukan atau mengingatnya..

Jawaban yang Diterima:

Saya akan menggunakan tr bukannya awk :

echo "Lorem ipsum dolor sit sit amet et cetera." | tr '[:space:]' '[\n*]' | grep -v "^\s*$" | sort | uniq -c | sort -bnr
  • tr hanya mengganti spasi dengan baris baru
  • grep -v "^\s*$" memangkas baris kosong
  • sort untuk mempersiapkan sebagai input untuk uniq
  • uniq -c untuk menghitung kejadian
  • sort -bnr mengurutkan dalam urutan terbalik numerik sambil mengabaikan spasi

wow. ternyata itu adalah perintah yang bagus untuk menghitung umpatan per baris

Temukan . -nama “*.py” -exec cat {} \; | tr ‘[:spasi:]’ ‘[\n*]’ | grep -v “^\s*$” | urutkan | uniq -c | sort -bnr | sial sekali


Linux
  1. Cara menggunakan perintah WC untuk mencetak karakter, byte, baris baru, dan jumlah kata di Linux

  2. Bagaimana Mengurutkan Du Output Berdasarkan Ukuran?

  3. Urutkan Dan Hitung Jumlah Terjadinya Garis?

  1. Cetak Semua File Dalam Folder?

  2. Bagaimana Menemukan Kejadian Terakhir Dari Pola Dan Mencetak Semua Baris Setelah Kejadian Terakhir?

  3. Dapatkan Semua Kemungkinan Kombinasi Kata Dalam Huruf Kecil/Kapital?

  1. bagaimana cara mendapatkan sha1sum untuk menghasilkan biner?

  2. tcpdump:bagaimana cara mendapatkan keluaran grepable?

  3. Dapatkan Ukuran Semua Folder di Direktori