grep 为空返回true grep命令返回值

   日期:2024-12-26    作者:syglkt 移动:http://mip.riyuangf.com/mobile/quote/45132.html


grep 为空返回true grep命令返回值

grep命令

Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。

grep可用于shell脚本,因为grep通过返回一个状态值来说明搜索的状态,如果模板搜索成功,则返回0,如果搜索不成功,则返回1,如果搜索的文件不存在,则返回2。我们利用这些返回值就可进行一些自动化的文本处理工作。

  

一、语法格式:

grep 选项 参数 文件
Usage: grep [OPTION]... PATTERN [FILE]...

   

二、常用命令参数

 

三、grep正则表达式

 

四、grep命令常见用法

注:此处所有的grep命令用法我将以 a.txt 文件里面的内容作为演示的参考

4.1 过滤关键字行
 

4.2 过滤关键字行显示关键字在文本的行数
 

4.3 带颜色显示关键字在文本的行数字
 

4.4 不区分大小写
 

4.5 取反

4.6 显示带关键字的行数
 

4.7 显示关键字行和后面的2行(总共3行)  After
 

4.8  显示关键字行和前面的2行  Before
 

4.9 匹配IP地址     -E 扩展正则表达式

 
注:.有特殊意义,所以需要转义

4.10  

注:多个条件需要用到-E参数
4.11 递归查找

注:-n:打印行号  --color:带颜色  -R:递归查询  -E:支持扩展正则
    
4.12

选项 -e:匹配多个匹配样式 -o:只输出匹配到的内容
 

4.13 搜索多个文件并查找匹配文本在哪些文件中:

4.14 在grep搜索结果中包括或者排除指定文件:
 

五、补充:grep使用多个查询条件?
 

1、打印包含字母的行

2、打印至少有4个字母连在一起的行

9、<         锚定单词的开始,如:'<grep'匹配包含以grep开头的单词的行。    
     >         锚定单词的结束,如'grep>'匹配包含以grep结尾的单词的行。    
     <...>   匹配只包含括号里面的单词的行,如匹配<zhangjunchao>,zhangjunchao110这种不匹配。

grep高级使用理解

1、待查找的文件有几千万行,你的规则有几百条

2、你需要使用linux扩展正在表达式

grep -E pattern file

默认情况下grep只支持基础正在表达式,E选项可以支持扩展表达式(也可以待地gerp -E 为egrep)

什么是扩展正在表达式?

3、你想看到被匹配的行周围(前后)的行

grep -A2  -B2  'aaa'  file

-A :after,显示匹配行后的行 -A2 显示 后2行

-B :before,显示匹配行前的行 -B2 显示 前2行

如果你真的同时需要显示,前后各n行,那么你可以用-C选项

grep -C2 'aaa' file 作用与-A2 -B2完全相同

 

 

egrep命令

egrep用于在文件中查找指定的字符串,与grep -E相似,使用语法可参考grep命令。

语法:egrep(选项)(查找模式)(文件名1,文件名2,……)

实例一:筛选字符串

注:用( )表示一个整体,例如(oo)+就表示1个 ‘oo’ 或者多个 ‘oo’

实例二:筛选字符串


特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


举报收藏 0评论 0
0相关评论
相关最新动态
推荐最新动态
点击排行
{
网站首页  |  关于我们  |  联系方式  |  使用协议  |  隐私政策  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号