Kesenangan di Terminal Linux - Bermain dengan Jumlah Kata dan Karakter


Baris perintah Linux memiliki banyak kesenangan dan banyak tugas membosankan yang dapat dilakukan dengan sangat mudah namun dengan sempurna. Bermain-main dengan kata dan karakter, frekuensinya dalam file teks, dll adalah apa yang akan kita lihat di artikel ini.

Satu-satunya perintah yang terlintas di benak kita, untuk mengubah baris perintah Linux untuk memanipulasi kata dan karakter dari file teks adalah perintah wc.

Perintah 'wc' yang merupakan singkatan dari jumlah kata mampu Mencetak jumlah baris, kata & byte baru dari file teks.

Untuk bekerja dengan skrip kecil untuk menganalisis file teks, kita harus memiliki file teks. Untuk menjaga keseragaman, kami membuat file teks dengan output perintah man, seperti dijelaskan di bawah.

man man > man.txt

Perintah di atas membuat file teks 'man.txt' dengan konten 'halaman manual' untuk perintah 'man'.

Kami ingin memeriksa kata-kata yang paling umum, dalam 'File Teks' yang dibuat di atas dengan menjalankan skrip di bawah ini.

cat man.txt | tr ' '  '2' | tr '[:upper:]' '[:lower:]' | tr -d '[:punct:]' | grep -v '[^a-z]' | sort | uniq -c | sort -rn | head
Contoh Keluaran
7557 
262 the 
163 to 
112 is 
112 a 
78 of 
78 manual 
76 and 
64 if 
63 be

Skrip sederhana satu baris di atas menunjukkan, sepuluh kata yang paling sering muncul dan frekuensi kemunculannya, dalam file teks.

Bagaimana kalau memecah sebuah kata menjadi satu per satu menggunakan perintah berikut.

echo 'tecmint team' | fold -w1
Contoh Keluaran
t 
e 
c 
m 
i 
n 
t 
t 
e 
a 
m

Catatan: Di sini, '-w1' adalah untuk lebar.

Sekarang kita akan memecah setiap kata dalam file teks, mengurutkan hasilnya dan mendapatkan keluaran yang diinginkan dengan frekuensi sepuluh karakter paling sering.

fold -w1 < man.txt | sort | uniq -c | sort -rn | head
Contoh Keluaran
8579  
2413 e
1987 a
1875 t
1644 i
1553 n
1522 o
1514 s
1224 r
1021 l

Bagaimana dengan mendapatkan karakter paling sering dalam file teks dengan huruf besar dan huruf kecil berbeda seiring dengan frekuensi kemunculannya.

fold -w1 < man.txt | sort | tr '[:lower:]' '[:upper:]' | uniq -c | sort -rn | head -20
Contoh Keluaran
11636  
2504 E 
2079 A 
2005 T 
1729 I 
1645 N 
1632 S 
1580 o
1269 R 
1055 L 
836 H 
791 P 
766 D 
753 C 
725 M 
690 U 
605 F 
504 G 
352 Y 
344 .

Periksa output di atas, yang menyertakan tanda baca. Mari hilangkan tanda baca, dengan perintah 'tr'. Ini dia:

fold -w1 < man.txt | tr '[:lower:]' '[:upper:]' | sort | tr -d '[:punct:]' | uniq -c | sort -rn | head -20
Contoh Keluaran
  11636  
  2504 E 
  2079 A 
  2005 T 
  1729 I 
  1645 N 
  1632 S 
  1580 O 
  1550 
  1269 R 
  1055 L 
   836 H 
   791 P 
   766 D 
   753 C 
   725 M 
   690 U 
   605 F 
   504 G 
   352 Y

Sekarang saya memiliki tiga file teks, mari jalankan skrip satu liner di atas untuk melihat hasilnya.

cat *.txt | fold -w1 | tr '[:lower:]' '[:upper:]' | sort | tr -d '[:punct:]' | uniq -c | sort -rn | head -8
Contoh Keluaran
  11636  
   2504 E 
   2079 A 
   2005 T 
   1729 I 
   1645 N 
   1632 S 
   1580 O

Selanjutnya kita akan membuat surat-surat jarang yang panjangnya setidaknya sepuluh huruf. Ini skrip sederhananya.

cat man.txt | tr '' '2' | tr '[:upper:]' '[:lower:]' | tr -d '[:punct:]' | tr -d '[0-9]' | sort | uniq -c | sort -n |  grep -E '..................' | head
Contoh Keluaran
1        ────────────────────────────────────────── 
1        a all 
1        abc             any or all arguments within   are optional 
1               able  see setlocale for precise details 
1        ab              options delimited by  cannot be used together 
1               achieved by using the less environment variable 
1              a child process returned a nonzero exit status 
1               act as if this option was supplied using the name as a filename 
1               activate local mode  format and display  local  manual  files 
1               acute accent

Catatan: Semakin banyak titik pada skrip di atas hingga semua hasil dihasilkan. Kita dapat menggunakan .{10} untuk mendapatkan sepuluh karakter yang cocok.

Skrip sederhana ini, juga membuat kita mengetahui kata dan karakter yang paling sering muncul dalam bahasa Inggris.

Itu saja untuk saat ini. Saya akan berada di sini lagi dengan topik menarik dan unik lainnya yang perlu diketahui, yang pasti ingin Anda baca. Jangan lupa untuk memberi kami umpan balik Anda yang berharga di bagian komentar di bawah.

Baca Juga : 20 Perintah Lucu Linux