2011-02-03 35 views

Odpowiedz

75

Będzie to również liczyć wiele wystąpień słowa w jednym wierszu:

grep -o 'word' filename | wc -l 
+0

Ahh, '-o' robi magię. Dobra odpowiedź, nigdy o tym nie wiedziałem. Nigdy więcej przegranych dzisiaj :( –

+0

po teście, dlaczego cat pliku, to liczy się wiele słów w tej samej linii? – magqq

+0

powodem, dla którego chcę wiedzieć jest dla wydajności, ponieważ mamy duże pliki dziennika dużo z nich do zliczenia te idiotyczne id, bardzo bolesne, trzeba policzyć te szybko, ale dobrze zrobione, jak dotąd lubię ten najlepszy, thx mohit6up! – magqq

4

grep -c słowo plik

jeśli chcesz sprawa niewrażliwe, użyj grep -ic

+1

Nie spowoduje to wystąpienia wielu wystąpień tego samego słowa w jednym wierszu. – nc3b

+0

Interesujący punkt. Możesz wspomnieć, że właśnie dlatego używasz tr w swojej odpowiedzi. –

2
cat filename | tr ' ' '\n' | grep 'word' | wc -l 
-1
fgrep "word to be counted" filename|wc -w 
+0

Podczas gdy ten kod może odpowiedzieć na pytanie, zapewniając dodatkowy kontekst dotyczący tego, jak i/lub dlaczego rozwiązuje problem poprawi długoterminową wartość odpowiedzi. – Badacadabra

Powiązane problemy