【每天一个Linux命令】

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012507347/article/details/84483890

grep 命令 是在文件中查找匹配字符串,可以使用正则表达式。是我们分析数据非常重要的工具。

最简单的使用

# grep [OPTIONS] PATTERN [FILE...]
grep "keyword" ./target_file

作为一个老牌儿命令,grep的参数很多,我们就按man手册上的分类,梳理下这些参数。

匹配规则

-E, --extended-regexp 按extended正则表达式解析“模式”(PATTERN)
-G, --basic-regexp 使用基本正则表达式,默认
-P, --perl-regexp 使用perl正则表达式
-F, --fixed-strings 按固定的字符串解析,不使用正则

三种正则的具体规则现在暂不展开

匹配控制

-e PATTERN, --regexp=PATTERN 指定模式
-f FILE, --file=FILE 匹配的文件,可以与 -e 配对,对不同的文件使用不同的模式
-i, --ignore-case 忽略大小写
-v, --invert-match 反向匹配,输出没有被匹配的行
-w, --word-regexp 匹配一个完成的单词,类似在PATTERN前后加上\b
-x, --line-regexp 匹配一整行,类似在PATTERN前后加上^$

输出控制

-c, --count 只显示匹配的多少行
–color[=WHEN], --colour[=WHEN] 高亮被匹配的字符, WHEN is never, always, or auto.
-L, --files-without-match 只列出没有匹配的文件,的文件名
-l, --files-with-matches 列出含有匹配的文件名
-m NUM, --max-count=NUM 只显示前NUM个含有匹配的行,类似sql中的limit,处理大文件很有用,可以提高效率
-o, --only-matching 只显示匹配的部分,不显示整行
-q, --quiet, --silent 只返回是否有匹配,一个bool值
-s, --no-messages 忽略某些错误信息

行前缀控制

行内容控制

文件控制

猜你喜欢

转载自blog.csdn.net/u012507347/article/details/84483890