A Quick Introduction to Unix/More grep examples


Anchors edit

Beginning of line edit

A search can be constrained to find the string at the beginning of the line with the symbol ^. Example:

grep '^A' filename

Finds the string A at the beginning of lines.

End of line edit

A search can be constrained to find the string at the end of the line with the symbol $. Example:

grep '5$' filename

Finds the string 5 at the end of lines.

Counting empty lines edit

The combination search string ^$ finds empty lines.

To match any single character edit

The meta-character . matches any single character except the end of line character.

Example edit

The input file contains these lines:

one
bone
throne
clone

We search with

grep '.one' filename

The results are

bone
throne
clone

The first line doesn't match.

To match zero or more characters edit

The meta-character * matches zero or more occurences of the previous character.

Example edit

The input file bells containes these lines

bel
bell
belll
be
bet

We search with

grep 'bel*' bells

The results are

bel
bell
belll
be
bet

Example edit

The input file is as the previous example. The . is used after the * to require at least a single character.

We search with

grep 'bel*.' bells

The results are

bel
bell
belll

Contrast this with the previous example. Here, we match everything except be.

Example edit

The input file is as before.

We search with

grep 'bel.*' bells

The results are

bel
bell
belll

Character lists edit

You can use a list of characters surrounded by [ and ] which will match on any single character in the list.

Example edit

The input file is lines:

This is the zero line
Here y 
Crosses x

we search with

grep [xyz] lines

The result is

This is the zero line
Here y 
Crosses x

Example edit

The input file is as before.

we search with

grep [xyb] lines

The result is

Here y 
Crosses x