【21】linux进阶——grep命令搜索查找

大家好,这里是天亮之前ict,本人网络工程大三在读小学生,拥有锐捷的ie和红帽的ce认证。每天更新一个linux进阶的小知识,希望能提高自己的技术的同时,也可以帮助到大家

另外其它专栏请关注:

锐捷数通实验:锐捷数通实验

网络工程师成长日志:网络工程师成长日志

it自动化运维:it自动化运维

      grep是强大的文本搜索工具,查找文件中符合条件的字符串,与sed、awk组成linux的三剑客,本博客主要介绍grep命令,然后简答了解一下grep的增强版——egrep

 一 grep

1.1参数

grep的能力是超级全面的,grep有几个参数,给大家总结一下:

参数 功能
-i 不区分大小写
-v 反查,比如搜索不含某字符的行
^xxx 以xxx作为关键字行首的行
xxx$ 以xxx作为关键字行尾的行
-A 行数 显示正则表达式匹配项之后的行数
-B 行数 显示正则表达式匹配项之前的行数
-n 查找并显示行号

1.2范例

搜索包含lmy字符串的行

grep 关键字 文件路径

 查看不包含root关键字的行

grep -v 关键字 文件路径

 grep -n 关键字 文件路径

查找后并显示行号

查找以xxx关键字为行首的行

grep ^关键字 文件路径

 查看以xxx关键字为行尾的行

grep bash$ 文件路径

 -A选项,是 After 的缩写,表示除了展示匹配行之外,还要展示出匹配行下面的若干行。而示例中的 -A 1 则表示还展示匹配行下面一行的内容。

 -B选项,是 Before 的缩写,表示除了展示匹配行之外,还要展示出匹配行上面的若干行。而示例中的 -B 1 则表示还展示匹配行上面一行的内容。

 

 经典案例:

查看某配置文件除去注释和多余的空行的内容

grep -v -e ‘#’ -e '^$' /etc/ssh/sshd_config

 二 egrep

egrep执行效果与"grep-E"相似,使用的语法及参数可参照grep指令,与grep的不同点在于解读字符串的方法。egrep可以搜索字符串包含linux或123的字符

例如:

​​​​​​​

 “生活的方向无论你如何选择都会后悔,人总向往没经历过的生活”

猜你喜欢

转载自blog.csdn.net/weixin_51338719/article/details/130398422