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]主要参数: - ...
随机推荐
- C#中Form的Paint事件响应方法与重载虚方法OnPaint()的区别
Form_Paint()方法是Paint事件的响应方法,OnPaint是可重载的虚方法,OnPaint方法是调用Paint事件的,用哪一个,效果是一样,就看那一个方便了内部是这样实现的: protec ...
- python中的sum函数.sum(axis=1)
看起来挺简单的样子,但是在给sum函数中加入参数.sum(a,axis=0)或者是.sum(axis=1) 就有点不解了 在我实验以后发现 我们平时用的sum应该是默认的axis=0 就是普通的相加 ...
- 如何用C#对Gridview的项目进行汇总统计?
上一次用了javascript对gridview进行了汇总统计,但那个统计是在客户端进行的,虽然减轻了服务器的负担,但是,当需要把统计信息汇出excel时,汇总信息却死活不出来了,所以,绕半天又绕回来 ...
- mavan下scala编译中文乱码的问题.以及内存溢出问题解决
网上都没有找到我这个问题.都是自己解决的.也不知道后来者能不能遇到 关键字: java.lang.StackOverflowError scala not found scala <config ...
- SVN 操作报错 “Previous operation has not finished; run 'cleanup' if it was interrupted“
今天在 通过 SVN 合并代码的时候报了如下的错误 ”Previous operation has not finished; run 'cleanup' if it was interrupted“ ...
- iOS安装CocoaPods详细过程
iOS安装CocoaPods详细过程 一.简介 什么是CocoaPods CocoaPods是OS X和iOS下的一个第三类库管理工具,通过CocoaPods工具我们可以为项目添加被称为“Pods”的 ...
- 用IntelliJ IDEA 配置Maven并部署Maven工程到Tomcat(Windows中)
近几天做一个新项目才接触Intellij IDEA 1.在官网下载了maven 解压并新建一个本地仓库文件夹 2.配置本地仓库路径 3.配置maven环境变量 4.在IntelliJ IDEA中配置m ...
- android软件开发之TextView控件常用属性
TextView控件 text属性,设置显示的文本 textColor:设置文本颜色 textSize:设置文本字体大小 autoLink:设置文本为电话,URL连接等的时候是否显示为可点击的链接 c ...
- MySQL数据库 : 基本语句
mysql -uroot -p 登陆数据库 select now(); 显示当前时间 \q 退出 show databases; 显示数据库 create database 数据库名 charset= ...
- IDEA中使用单元测试@Test等,提示没有 Junit.jar包
1.File-->Project Structure-->Modules-->右侧Dependencies-->+号-->JARs or directories... 2 ...