Linux:grep指令
学习自:
Linux之grep命令详解_linux grep_努力者Mr李的博客-CSDN博客
Linux grep命令 - Linux 教程 - 菜鸟学堂-脚本之家
0、常用
#-A n:列出目标及之后的行 #-B n:列出目标及之前的行 #-C n:列出目标及前后的行
#-i :忽略大小写
#-w :完整匹配某个单词
#-v :不匹配某个单词
用-v可以在你用ps+grep指令时,把grep指令本身摘出去:
ps -ef | grep -w nginx -v grep
1、用法
grep [选项] PATTERN [文件/标准输入]
2、作用
从文件或标准输入中,查找PATTERN,PATTERN为支持正则表达式的字符串(所在行)。
3、选项
这里只给出一些常用的选项
选项 |
说明 |
-i | 忽略大小写 |
-v |
反向查找 查找不包含后跟的关键字的内容 |
-n | 显示行号 |
-w | 完整匹配单词,而不是匹配其中的一部分 |
-R | 搜索子目录 |
--color=auto | 关键字加上颜色 |
-c | 计算匹配次数 |
-I | 只列出文件 |
-L | 只列出不匹配文件 |
-q |
不显示输出结果,可通过$?输出。 常用于shell脚本if语句中 |
-A n | 列出匹配行及其后n行 |
-B n | 列出匹配行及其前n行 |
-C n | 列出匹配行及其前后n行 |
-E | 支持扩展正则表达式 |
4、例子
1)查看文件,过滤其中的注释和空行
cat redis.conf | grep -v '#' | grep -v '^$'
2)并列查找
学习自:Linux grep多个关键字“与”和“或”使用详解_grep两个关键字-CSDN博客
如果要用或与这种的逻辑条件,进行查找,可以加上-E参数,并在后边用对应的正则表达式
或 grep -E 'a1|a2' filename 与 ①-E和正则表达式;②两个grep grep -E 'a1.*a2|a2.*a1' grep 'a1' filename | grep 'a2' #非 -v grep -v 'a1' filename