Here are some advanced options for the grep command that enhance its functionality:
Advanced Options
-E: Use extended regular expressions (ERE).
grep -E "pattern1|pattern2" filename.txt-P: Use Perl-compatible regular expressions (PCRE).
grep -P "\d{3}-\d{2}-\d{4}" filename.txt-o: Print only the matched parts of a matching line.
grep -o "pattern" filename.txt-c: Count the number of matching lines.
grep -c "pattern" filename.txt-q: Quiet mode; suppresses output, only returns the exit status.
grep -q "pattern" filename.txt--color: Highlight the matching text in the output.
grep --color "pattern" filename.txt-A [num]: Print [num] lines after the matching line.
grep -A 3 "pattern" filename.txt-B [num]: Print [num] lines before the matching line.
grep -B 3 "pattern" filename.txt-C [num]: Print [num] lines before and after the matching line.
grep -C 3 "pattern" filename.txt--exclude: Exclude files matching a pattern from the search.
grep --exclude=*.log "pattern" *--include: Include only files matching a pattern in the search.
grep --include=*.txt "pattern" *
Example Usage
To search for multiple patterns using extended regex:
grep -E "error|warning" logfile.txtTo count occurrences of a pattern:
grep -c "pattern" filename.txt
These advanced options allow for more complex searches and better control over the output of the grep command.
