Linux 文本搜索命令

grep

grep 命令用于在文件中搜索匹配指定模式的行。

grep [option]... pattern [file]...

常用选项

选项 全称 含义
-c --count 只显示匹配的行数
-i --ignore-case 忽略大小写
-l --files-with-matches 只显示包含匹配项的文件名
-L --files-without-match 只显示不包含匹配项的文件名
-n --line-number 显示行号
-r --recursive 递归搜索子目录
-s --no-messages 不显示错误信息
-v --invert-match 反向匹配,显示不匹配的行
-w --word-regexp 匹配完整单词
-x --line-regexp 匹配整行
-E --extended-regexp 使用扩展正则表达式

示例

搜索时忽略配置文件中的注释与空行。

grep -v "^#" /etc/ssh/sshd_config | grep -v "^$"

查找日志中的错误。

grep -E "(error|ERROR|Error)" /var/log/syslog

递归搜索包含错误信息的日志,且忽略错误

grep -lrs "error" /var/log/

look

look 命令用于在排序过的文件中查找以指定字符串开头的行。如果未指定文件,默认的搜索文件将是/usr/share/dict/words,列出给定字符串开头的单词

look [option]... string [file]

常用选项

选项 全称 含义
-d --alphanum 只比较字母、数字和空格字符,不指定file时默认启用
-f --ignore-case 忽略大小写

示例

在字典中查找以特定前缀开头的所有单词。

look comp

在自定义文件中查找。

look "John" names.txt
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容