Kā saskaitīt vārdu gadījumus teksta failā


Grafiskās lietotāja saskarnes vārdu procesoros un piezīmju lietojumprogrammās ir informācija vai detalizēti indikatori dokumenta detaļām, piemēram, lappušu, vārdu un rakstzīmju skaitam, virsrakstu sarakstam teksta procesoros, satura tabulai dažos iezīmēšanas redaktoros utt. vārdu vai frāžu parādīšanās ir tikpat vienkārša kā nospiežot Ctrl + F un ierakstot rakstzīmes, kuras vēlaties meklēt.

GUI padara visu vieglu, bet kas notiek, ja jūs varat strādāt tikai no komandrindas un vēlaties pārbaudīt, cik reizes teksts failā parādās vārds, frāze vai rakstzīme? Tas ir gandrīz tikpat viegli, kā tas ir, lietojot GUI, ja vien jums ir pareizā komanda un es grasos jums pastāstīt, kā tas tiek darīts.

Pieņemsim, ka jums ir fails example.txt , kurā ir teikumi:

Praesent in mauris eu tortor porttitor accumsan. Mauris suscipit, ligula sit amet pharetra semper, 
nibh ante cursus purus, vel sagittis velit mauris vel metus enean fermentum risus.

Varat izmantot komandu grep, lai saskaitītu, cik reižu failā "mauris" parādās, kā parādīts.

$ grep -o -i mauris example.txt | wc -l

Tikai izmantojot grep -c , tiks saskaitīts to rindu skaits, kurās ir atbilstošais vārds, nevis visu atbilstību skaits. Opcija -o ir tas, kas liek grepam katru spēli izvadīt unikālā rindā, un pēc tam wc -l liek wc skaitīt rindu skaitu. Tā tiek secināts atbilstošo vārdu kopējais skaits.

Atšķirīga pieeja ir pārveidot ievades faila saturu ar komandu tr tā, lai visi vārdi būtu vienā rindā, un pēc tam izmantojiet grep -c , lai saskaitītu atbilstības skaitu.

$ tr '[:space:]' '[\n*]' < example.txt | grep -i -c mauris

Vai šādi jūs pārbaudītu vārdu sastopamību no sava termināla? Dalieties ar mums savā pieredzē un informējiet mūs, ja jums ir cits veids, kā paveikt uzdevumu.