mirror of
https://github.com/tldr-pages/tldr.git
synced 2025-04-29 10:44:55 +02:00

By default, grep already uses regular expressions when searching. The example `grep -e {{^regex$}} {{path/to/file}}` is the same as `grep {{^regex$}} {{path/to/file}}`. However, because of the comment about extended regular expressions, I mistakenly assumed `-e` was the option to enable it. I believe most people would refer to `tldr` in this use case looking for the `-E` extended regular expressions. With this in mind, I believe that example would be better rephrased as this pull request makes it.
44 lines
1,023 B
Markdown
44 lines
1,023 B
Markdown
# grep
|
|
|
|
> Matches patterns in input text.
|
|
> Supports simple patterns and regular expressions.
|
|
|
|
- Search for an exact string:
|
|
|
|
`grep {{search_string}} {{file_path}}`
|
|
|
|
- Search in case-insensitive mode:
|
|
|
|
`grep -i {{search_string}} {{path/to/file}}`
|
|
|
|
- Search recursively (ignoring non-text files) in current directory for an exact string:
|
|
|
|
`grep -rI {{search_string}} .`
|
|
|
|
- Use extended regular expressions (supporting `?`, `+`, `{}`, `()` and `|`):
|
|
|
|
`grep -E {{^regex$}} {{path/to/file}}`
|
|
|
|
- Print 3 lines of context around each match:
|
|
|
|
`grep -C 3 {{search_string}} {{path/to/file}}`
|
|
|
|
- Print the count of matches instead of the matching text:
|
|
|
|
`grep -c {{search_string}} {{path/to/file}}`
|
|
|
|
- Print line number for each match:
|
|
|
|
`grep -n {{search_string}} {{path/to/file}}`
|
|
|
|
- Print file names with matches:
|
|
|
|
`grep -l {{search_string}} {{path/to/file}}`
|
|
|
|
- Use the standard input instead of a file:
|
|
|
|
`cat {{path/to/file}} | grep {{search_string}}`
|
|
|
|
- Invert match for excluding specific strings:
|
|
|
|
`grep -v {{search_string}}`
|