Unix Command: Grep – Quick Reference – Pattern – Examples – Options



Grep scans its input for a pattern, and can display the selected pattern, the line numbers of the filenames where the pattern occurs, The command uses the following syntax

grep options pattern filesname(s)

grep searches for pattern in one or more filenames.

Example for Grep command:

  1. grep “sales” emp.lst
  2. grep “director” emp1.lst emp2.lst
  3. grep ‘jai sharma’ emp.lst
  4. grep “jai Sharma $var” emp.lst

—————-Grep options—————————

Ignoring Case (i) When you look for a name, but you are not sure of the case, grep offers the –i (ignore) option which ignores case for patteen matching.

> Grep –i ‘agarwal’ emp.lst

Deleting Lines  or Inverse(-v): -v (inverse) option selects all except lines containing the pattern. Thus, you can create a file other list containing all but director.

> Grep –v “director” emp.lst > other list

Displaying line Numbers (-n): The –n(number) options displays the line numbers containing the pattern, along with the lines:

> grep –n ‘marketing’ emp.lst

Counting Line Containing patterns (-c): The –c (count) option counts the number of lines containing the pattern ( which is not the same as number of occurrences).

  1. grep –c director emp.lst
  2. grep –c director emp*.lst

Displaying Filenames (-l): The –l (list) option displays only the files names of files containing the pattern.

> grep –l ‘manager’ *.lst

Matching Multiple Patterns(-e): With the –e option, you can match the three agarwals by using grep like this:

> grep –e “Agarwal” –e “aggarwal” –e “agarwal” emp.lst

Taking patterns from a file (-f): we can place all patterns in a separate file, one pattern per lin. Grep takes inputs from there with the –f option:

> grep –f pattern.lst emp.lst


Rajesh Kumar
Follow me
Notify of
Inline Feedbacks
View all comments
Would love your thoughts, please comment.x