tldr/pages/common/grep.md

45 lines
1.0 KiB
Markdown
Raw Normal View History

2013-12-08 08:56:16 +00:00
# grep
> Matches patterns in input text.
> Supports simple patterns and regular expressions.
2013-12-08 08:56:16 +00:00
- Search for an exact string:
2015-10-22 08:31:52 +01:00
`grep {{search_string}} {{path/to/file}}`
2013-12-08 08:56:16 +00:00
- Search in case-insensitive mode:
2016-01-27 22:12:10 +00:00
`grep -i {{search_string}} {{path/to/file}}`
2016-01-27 22:12:10 +00:00
- Search recursively (ignoring non-text files) in current directory for an exact string:
`grep -rI {{search_string}} .`
- Use extended regular expressions (supporting `?`, `+`, `{}`, `()` and `|`):
2013-12-08 08:56:16 +00:00
`grep -E {{^regex$}} {{path/to/file}}`
2013-12-08 08:56:16 +00:00
- Print 3 lines of [C]ontext around, [B]efore, or [A]fter each match:
2013-12-08 08:56:16 +00:00
`grep -{{C|B|A}} 3 {{search_string}} {{path/to/file}}`
2013-12-08 08:56:16 +00:00
- Print the count of matches instead of the matching text:
2013-12-08 08:56:16 +00:00
`grep -c {{search_string}} {{path/to/file}}`
2013-12-08 08:56:16 +00:00
- Print line number for each match:
2016-01-05 05:30:21 +00:00
`grep -n {{search_string}} {{path/to/file}}`
2016-01-05 05:30:21 +00:00
2016-06-21 08:11:27 +01:00
- Print file names with matches:
`grep -l {{search_string}} {{path/to/file}}`
2016-06-21 08:11:27 +01:00
- Use the standard input instead of a file:
2013-12-08 08:56:16 +00:00
`cat {{path/to/file}} | grep {{search_string}}`
2014-07-27 09:23:56 +01:00
- Invert match for excluding specific strings:
2014-07-27 09:23:56 +01:00
`grep -v {{search_string}}`