Linux 管理员 - Grep 命令

grep 是管理员常用的 −

  • 查找具有特定文本字符串的文件
  • 在日志中搜索文本字符串
  • 过滤命令,重点关注特定字符串

以下是 grep 常用开关列表。

开关 操作
-E * 将模式解释为正则表达式
-G * 将模式解释为基本正则表达式表达式
-c 抑制正常输出,仅显示匹配数
-l 列出匹配的文件
-n 为每个添加前缀
-m 在匹配行数后停止读取
-o 每行仅打印匹配行的匹配部分(适用于模式匹配)
-v 反转匹配,显示不匹配
-i 不区分大小写的搜索
-r 递归使用 grep

Xorg 日志中搜索错误 X 服务器错误 −

[root@centosLocal log]# grep error ./Xorg*.log 
   ./Xorg.0.log:   (WW) warning, (EE) error, (NI) not implemented, (??) unknown. 
   ./Xorg.1.log:   (WW) warning, (EE) error, (NI) not implemented, (??) unknown. 
   ./Xorg.9.log:   (WW) warning, (EE) error, (NI) not implemented, (??) unknown. 
[root@centosLocal log]#

检查导入的 Windows Server 防火墙日志中是否存在可能的 RDP 攻击。

[root@centosLocal Documents]# grep 3389 ./pfirewall.log | grep " 146." | wc -l
326
[root@centosLocal Documents]#

如上例所示,我们在不到 24 小时内收到了来自 IPv4 A 类范围的 326 次远程桌面登录尝试。出于隐私原因,隐藏了有问题的 IP 地址。这些都来自同一个 IPv4 地址。很快,我们就有了确凿的证据来阻止防火墙中的某些 IPv4 范围。

grep 可能是一个相当复杂的命令。但是,Linux 管理员需要牢牢掌握。在普通的一天中,Linux 系统管理员可以使用十几种 grep 变体。

basic_centos_linux_commands.html