使用标志运行 grep
本课属于 Coddy Terminal 学习旅程的“基础知识”单元。第 35 课,共 82 课。
添加标志后,你可以控制 grep 的搜索方式和显示内容,让它变得更强大。
最实用的 grep 标志:
-i:不区分大小写的搜索。无论是大写还是小写,都能匹配:
grep -i "error" server.log # 匹配 error、Error 和 ERROR-n:在每个匹配行旁显示行号:
grep -n "error" server.log
3:error: disk full
6:error: connection timeout-c:只显示匹配行的数量,不显示行本身:
grep -c "error" server.log
2-v,反转搜索,显示不匹配模式的行:
grep -v "info" server.log
error: disk full
warning: high memory usage
error: connection timeout-r:在目录中的所有文件里递归地搜索:
grep -r "error" logs/ # 搜索 logs 文件夹中的所有文件-l:只显示包含匹配项的文件名,不显示匹配的行:
grep -l "error" *.log组合标志:
你可以将多个标志组合使用:
grep -in "error" server.log # 不区分大小写,并显示行号
grep -vc "info" server.log # 反向匹配,并统计不包含 info 的行数挑战
简单使用带标志的 grep,以三种不同方式检查 server.log:
- 查找所有包含
error的行,并使用-n显示它们的行号 - 使用
-c统计包含info的行数 - 使用
-v显示所有不包含info的行
提示:依次运行这三条命令。每个标志都会改变
grep呈现结果的方式。
亲手试试
终端
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
基础知识中的所有课
自己练习: Terminal 在线编辑器