Skip to content

Latest commit

 

History

History
113 lines (87 loc) · 4.31 KB

grep.md

File metadata and controls

113 lines (87 loc) · 4.31 KB
title date icon background tags categories intro
Grep
2020-11-25 10:28:43 -0800
icon-grep
bg-emerald-400
egrep
search
pattern
text
Linux Command
This cheat sheet is intended to be a quick reminder for the main concepts involved in using the command line program grep and assumes you already understand its usage.

Getting started {.cols-5}

Usage {.col-span-2}

Search standard output (i.e. a stream of text)

$ grep [options] search_string

Search for an exact string in file:

$ grep [options] search_string path/to/file

Print lines in myfile.txt containing the string "mellon"

$ grep 'mellon' myfile.txt

Wildcards are accepted in filename.

Option examples {.col-span-3}

Option Example Operation
-i grep -i ^DA demo.txt Forgets about case sensitivity
-w grep -w "of" demo.txt Search only for the full word
-A grep -A 3 'Exception' error.log Display 3 lines after matching string
-B grep -B 4 'Exception' error.log Display 4 lines before matching string
-C grep -C 5 'Exception' error.log Display 5 lines around matching string
-r grep -r 'quickref.me' /var/log/nginx/ Recursive search (within subdirs)
-v grep -v 'warning' /var/log/syslog Return all lines which don't match the pattern
-e grep -e '^al' filename Use regex (lines starting with 'al')
-E grep -E 'ja(s|cks)on' filename Extended regex (lines containing jason or jackson)
-c grep -c 'error' /var/log/syslog Count the number of matches
-l grep -l 'robot' /var/log/* Print the name of the file(s) of matches
-o grep -o search_string filename Only show the matching part of the string
-n grep -n "go" demo.txt Show the line numbers of the matches

Grep regular expressions {.cols-3}

Refer

Please refer to the full version of the regex cheat sheet for more complex requirements.

Wildcards

- -
. Any character.
? Optional and can only occur once.
* Optional and can occur more than once.
+ Required and can occur more than once.

Quantifiers

- -
{n} Previous item appears exactly n times.
{n,} Previous item appears n times or more.
{,m} Previous item appears n times maximum.
{n,m} Previous item appears between n and m times.

POSIX

- -
[:alpha:] Any lower and upper case letter.
[:digit:] Any number.
[:alnum:] Any lower and upper case letter or digit.
[:space:] Any whites­pace.

Character

- -
[A-Z­a-z] Any lower and upper case letter.
[0-9] Any number.
[0-9­A-Z­a-z] Any lower and upper case letter or digit.

Position

^ Beginning of line.
$ End of line.
^$ Empty line.
\< Start of word.
\> End of word.