Linux commands: grep
New Courses Coming Soon
Join the waiting lists
A quick guide to the `grep` command, used to match patterns in text
The grep
command is a very useful tool, that when you master will help you tremendously in your day to day.
If you’re wondering,
grep
stands for global regular expression print
You can use grep
to search in files, or combine it with pipes to filter the output of another command.
For example here’s how we can find the occurences of the document.getElementById
line in the index.md
file:
grep -n document.getElementById index.md
Using the -n
option it will show the line numbers:
grep -n document.getElementById index.md
One very useful thing is to tell grep to print 2 lines before, and 2 lines after the matched line, to give us more context. That’s done using the -C
option, which accepts a number of lines:
grep -nC 2 document.getElementById index.md
Search is case sensitive by default. Use the -i
flag to make it insensitive.
As mentioned, you can use grep to filter the output of another command. We can replicate the same functionality as above using:
less index.md | grep -n document.getElementById
The search string can be a regular expression, and this makes grep
very powerful.
Another thing you might find very useful is to invert the result, excluding the lines that match a particular string, using the -v
option:
The
grep
command works on Linux, macOS, WSL, and anywhere you have a UNIX environment
Here is how can I help you:
- COURSES where I teach everything I know
- CODING BOOTCAMP cohort course - next edition in 2025
- THE VALLEY OF CODE your web development manual
- BOOKS 17 coding ebooks you can download for free on JS Python C PHP and lots more
- Interesting links collection
- Follow me on X