grep命令及正则
文本查找
grep,egrep,fgrep
grep :Global Research
根据模式搜索文本,并将符合模式的文本行显示出来
模式:Pattern,文本字符和正则的元字符组合而成匹配条件
grep 'root' /etc/passwd
-i :ignore case,忽略大小写
--color,高亮输出
-v:反向匹配,显示没有被模式匹配到的行
-o:只显示被模式匹配到的字符串
*:任意长度的任意字符
?:任意单个字符
[]:
[^]:指定范围外的
正则:Regular Expression,RegExp
元字符:
. :匹配任意单个字符
grep 'r..t' /etc/passwd
[] :匹配指定范围内的任意单个字符
[^] :匹配指定范围外的任意单个字符
字符集:[:digit:],[:lower:],[:upper:],[:punct:],[:space:],[:alpha:],[:alnum:]
匹配次数(贪婪模式):
* :匹配其前面的字符任意次
a*b
a.*b
a?b
.* :任意长度的任意字符
\? : 匹配其前面的字符1次或0次
\{m,n\} :匹配其前面的字符至少m次,至多n次
\{1,\} :至少1次
\{0,3\}:0~3次
grep 'a\{1,\}b' test.txt :a至少1次,接b
位置锚定:
^:锚定行首,此字符后面的任意内容必须出现在行首
grep '^r..t' /etc/passwd
$:锚定行尾,此字符前面的任意内容必须出现在行尾
grep 'w$' /etc/inittab :以w结束的行
grep 'b..h$' /etc/inittab :以 b..h结尾的行
^$:空白行
grep '^$' /etc/inittab :匹配空白行
grep '[[:digit:]]$' /etc/inittab :以数字结尾的行
grep '[[:space:]]$' /etc/inittab :以空白字符结尾的行
\<或\b :其后面的任意字符必须作为单词的首部出现
\>或\b :其前面的任意字符必须作为单词的尾部出现
\<root\>
grep 'root\>' test2.txt :root出现在词尾
grep '\<root' test2.txt :root出现在词首
分组:
\(\)
\(ab\)*
grep '\(ab\)*' test.txt :ab出现任意次
后向引用
\1:引用第1个左括号以及与之对应的右括号所包括的所有内容
\2:
\3:
grep '\(l..e\).*\1' test.txt :前面匹配l..e ,后面引用l..e
行中出现任意一数字\([0-9]\),中间跟任意字符.*,行尾以相同数字结尾\1$
grep '\([0-9]\).*\1$' /etc/inittab :前面匹配[0-9] ,后面引用[0-9]
grep命令及正则的更多相关文章
- grep 命令操作
linux grep命令 1.作用Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expressi ...
- 由一条Linux的grep命令说起
今天在开发的时候,看到同事使用了这样的一条linux命令 grep 'class YourClass' -rwi * |grep -v svn 想到了 grep命令的,几个参数. -r 明确要求搜索子 ...
- 强大的grep命令
1.作用 Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expression Print,表示全 ...
- linux grep命令总结
风生水起善战者,求之于势,不责于人,故能择人而任势. 博客园 首页 新随笔 联系 订阅 管理 posts - 791, comments - 394, trackba ...
- Linux grep 命令中的正则表达式详解
在 Linux .类 Unix 系统中我该如何使用 Grep 命令的正则表达式呢? Linux 附带有 GNU grep 命令工具,它支持扩展正则表达式(extended regular expres ...
- grep[行号&正则匹配字符有颜色]
事情是这样的,昨天在深入学习grep命令时,看到别人博客用grep正则匹配,不仅行数有颜色,而且匹配到的字符也有颜色.我在CRT也试了下,毛颜色都没有.顿时感觉 so low. 解决 编辑vim~/. ...
- linux中grep命令的用法
作为linux中最为常用的三大文本(awk,sed,grep)处理工具之一,掌握好其用法是很有必要的. 首先谈一下grep命令的常用格式为:[grep [选项] "模式" [ ...
- grep命令中文手册(info grep翻译)
body { font: 13.34px helvetica, arial, freesans, clean, sans-serif; color: black; line-height: 1.4em ...
- 【转】linux grep命令
1.作用 Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来 2.格式 grep [options] 3.主要参数 [options]主要参数: - ...
随机推荐
- web.xml中Listener的作用
Servlet的监听器Listener,它是实现了javax.servlet.ServletContextListener 接口的服务器端程序,它也是随web应用的启动而启动,只初始化一次,随web应 ...
- js 获取后台数据分页
页面创建一个存放内容的容器,以及分页的容器: <div id="content"></div> <div id="pager"&g ...
- if __name__ == "__main__"如何正确理解
粗略来讲,__name__是当前模块,当模块被直接运行时模块名为__main__.这句话的意思是,当模块被直接执行时,代码将运行,当模块是被导入时,代码不被运行 例如,执行one.py # file ...
- PAT——1014. 福尔摩斯的约会
大侦探福尔摩斯接到一张奇怪的字条:“我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm”.大侦探很快就明白了,字条 ...
- imageNamed和dataWithContentsOfFile的区别(1)
imageNamed和dataWithContentsOfFile的区别 imagecacheuiviewextensionprocessingxcode 最近老是受iphone内存问题的困扰,找了些 ...
- 随机数使用不当引发的生产bug
前几天负责的理财产品线上出现问题:一客户赎回失败,查询交易记录时显示某条交易记录为其他人的卡号. 交易的链路如下: 出现该问题后,我们对日志进行了分析,发现主站收到的两笔流水号完全相同,然而主站却没有 ...
- 利用MyFlash闪回丢失数据(续)
last night,i've tested flashback by MyFlash tool,but failed,now let's do some other test with ...
- 前端String转json
1.data = eval("("+data+")");2.JSON.parse(data);
- 【Hive三】Hive理论
1. Hive基础 1. Hive基础 Hive基本概念 引入原因: Hive是什么 Hive数据管理 四种数据模型 Hive内部表和外部表 Hive数据类型 Hive的优化 Map的优化: Redu ...
- 使用ntp协议同步本地时间(C语言)
使用ntp协议同步本地时间 同步服务器使用的东北大学网络授时服务:ntp.neu.edu.cn更多ntp服务器 http://www.ntp.org.cn/ 源代码来自网络,经本人精简ntp部分,供大 ...