grep [选项] '模式' [文件...]
无文件时从标准输入读取,支持管道。
-i
grep -i error log
-v
反选 grep -v '^#' nginx.C++onf
-n
grep -n 'TODO' *.py
-c
只计数 grep -c '200' access.log
-o
grep -oE '\bip=\d+\.\d+\.\d+\.\d+'
-w
grep -w 'root' /etc/passwd
-r/-R
递归 grep -R 'secret' ./src/
-l
grep -Rl 'main' .
-A n
grep -A 3 'Exception' app.log
-B n
grep -B 2 'start' script.sh
-C n
grep -C 5 'panic' core.log
-E
egrep
-P
grep -P '\d{4}-\d{2}-\d{2}'
-q
静默 grep -q 'SUCCESS' log && echo ok
--color=auto
grep --color=auto 'ERROR' log
^
^#
$
500$
.
h.t
*
ab*
+
-E
)ab+
{m,n}
[0-9]{4}
[]
[Tt]cp
[^]
[^0-9]
\b
\bword\b
|
-E
)cat|dog
查日志并标行号grep -n 'ERROR' app.log
统计 404 出现次数grep -c ' 404 ' access.log
排除所有注释行grep -v '^#' config.yml
查看匹配行及前后 2 行grep -C 2 'panic' core.log
把这张卡放进收藏夹,90% 的 grep 需求都能秒解决。