Unix / Linux: grep Word Count Command

How do I count words using grep command under Linux / Unix like operating systems? You can pass the -c option to grep command to suppress normal output and display a count of matching lines for each input file. The syntax is follows:

grep-c"word"filegrep-c"string"file

In this example, search for a word called ‘var’ and display a count of matching lines:

grep-c'var'/etc/passwd

Sample outputs:

23

You can pass the -v option to count non-matching lines:

grep-v'var'/etc/passwd

However, this will not count words. To count exact matched words, enter:

grep-o-w'word'/path/to/file/|wc-w

The grep -o command will only display matched words and the wc -c command will display the word counts: