List

The grep Command

The grep command searches a file or files for lines that have a certain pattern.

Syntax

$grep pattern file(s)

Options

 

Sr.No. Option & Description
1 -v

 

Prints all lines that do not match pattern.

2 -n

 

Prints the matched line and its line number.

3 -l

 

Prints only the names of files with matching lines (letter “l”)

4 -c

 

Prints only the count of matching lines.

5 -i

 

Matches either upper or lowercase.

Example

[nishant@localhost ~]$ ls -l
total 104
-rw-r–r–. 1 root root 44013 Aug 31 13:40 cwp2-latest
drwxr-xr-x. 3 nishant nishant 4096 Oct 14 2019 Desktop
drwxr-xr-x. 2 nishant nishant 4096 Jan 20 2015 Documents
drwxr-xr-x. 2 nishant nishant 4096 Jan 20 2015 Downloads
-rw-r–r–. 1 root root 14540 Nov 5 2012 epel-release-6-8.noarch.rpm
-rw-rw-r–. 1 nishant nishant 413 Aug 29 2016 file
-rwxrwxr-x. 1 vikas nishant 2033 Aug 29 2016 file1
drwxr-xr-x. 2 nishant nishant 4096 Jan 20 2015 Music
-rw-rw-r–. 1 nishant nishant 57 Aug 29 2016 newfile
drwxr-xr-x. 2 nishant nishant 4096 Jan 20 2015 Pictures
drwxr-xr-x. 2 nishant nishant 4096 Jan 20 2015 Public
drwxr-xr-x. 2 nishant nishant 4096 Jan 20 2015 Templates
drwxr-xr-x. 2 nishant nishant 4096 Jan 20 2015 Videos

In the above result, it is clear that there are files created in August, January, October but if need to search files from January only, then we can use “grep” command along with the “pipes” command like as below.

[nishant@localhost ~]$ ls -l | grep “Jan”
drwxr-xr-x. 2 nishant nishant 4096 Jan 20 2015 Documents
drwxr-xr-x. 2 nishant nishant 4096 Jan 20 2015 Downloads
drwxr-xr-x. 2 nishant nishant 4096 Jan 20 2015 Music
drwxr-xr-x. 2 nishant nishant 4096 Jan 20 2015 Pictures
drwxr-xr-x. 2 nishant nishant 4096 Jan 20 2015 Public
drwxr-xr-x. 2 nishant nishant 4096 Jan 20 2015 Templates
drwxr-xr-x. 2 nishant nishant 4096 Jan 20 2015 Videos

grep Search from file

[nishant@localhost question]$ grep Musa banana.txt
Banana (Musa species) is an important fruit of tropics.
It may be one of the reasons why the banana is called Apple of Paradise and botanically named Musa paradisiaca.

In the above example the word “Musa” was search from the file “banana.txt” and the word has been found in two lines in the file, so the grep command displays only those two line from the file.

Leave a Reply

Your email address will not be published. Required fields are marked *

  Posts

1 2 3
September 24th, 2020

awk Pipes

Pipes AWK can receive input and send output to other commands via the pipe. $ echo -e “1 2 3 […]

September 24th, 2020

awk Passing variables

Passing variables to AWK AWK has the -v option which is used to assign values to variables. For the next program, we […]

September 24th, 2020

awk more

Passing variables to AWK Pipes-awk awk Spell Checking Rock Paper Scissor Marking Keywords

September 23rd, 2020

awk Begin and End

  AWK has several built-in variables. They are set by AWK when the program is run. We have already seen […]

September 23rd, 2020

awk Programming

The name awk comes from the initials of its designers: Alfred V. Aho, Peter J. Weinberger, and Brian W. Kernighan. […]

September 8th, 2020

Unix Variable $* and $# difference

Script #!/bin/bash echo “Using \”\$*\”:”for a in “$*”; doecho $a;done echo -e “\nUsing \$*:”for a in $*; doecho $a;done echo […]

September 8th, 2020

Unix Comparison Operator

Comparison Operators String Comparison Description Str1 = Str2 Returns true if the strings are equal Str1 != Str2 Returns true […]

September 6th, 2020

grep Command

The grep Command The grep command searches a file or files for lines that have a certain pattern. Syntax $grep […]

September 6th, 2020

Shell Case Statement

Syntax case word in pattern1) Statement(s) to be executed if pattern1 matches ;; pattern2) Statement(s) to be executed if pattern2 […]

September 6th, 2020

Shell if-elif-else Statement

Syntax if [ expression 1 ] then Statement(s) to be executed if expression 1 is true elif [ expression 2 […]