首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
其他好文
> 详细
学习笔记第二十五节课
时间:
2018-04-26 01:01:01
阅读:
185
评论:
0
收藏:
0
[点我收藏+]
标签:
作业
正则介绍_grep
正则就是一串有规律的字符串,包含特殊符号。
对以后的写shell脚本很大的帮助。可以实现很多复杂的需求。
第一个工具 grep
grep 用来过滤关键词。
-c 行数,过滤出来的这些行有多少行。
做实验,先把etc/passwd 作为一个样本文件 cp 到 创建的grep目录下。
然后 用grep 过滤 nologin grep有一个好处,在过滤关键词的时候,会自动对关键词上颜色。
然后用-c 选项 可以显示刚才过滤的 有多少行。
-n选项可以显示带颜色的 行号。
-i选项不区分大小写。 比如 文件中有一个nologin 是大写的,那在-n显示的时候 就不会过滤出来 但是加了i 就会显示。
-v是取反的意思,就是一个文件中,不带关键词的都被过滤掉了 -v就是把被过滤掉的显示出来。
-r就是遍历所有子目录。比如过滤 包含root 的etc下所有目录,它就会显示出来。 不加-r 他会提示这是一个目录。
只能针对文件去做 不加r 的过滤。
在刚才的-r 过滤中也过滤出了 passwd 的含有root的 内容,如果向上翻找很麻烦的话,可以重定向到一个文件里去,这样就能很快查看到 你想要的结果了。
-A +数字 就是把你过滤出来的关键词加上关键词下面的数字行 比如 A2 就会列出 关键词下面的两行。
-B和A类似 是以上数字行
-C是A和B的结合 会列出关键词行数的上下各数字行。
grep/egrep 示例
grep的用法有很多,比如过滤文件中的数字。 加上-v就是除了数字外都过滤出来,但是这个文件中没有不包含数字的行。
grep 也可以过滤 文件中以某个字母或者符号开头的 用^ ,^的意思是以什么开头,。加上-v就是除了us开头的都过滤出来。
以后可能会看很多服务相关的配置文件,就可以用这个方法,把带#的注释的行过滤掉。
还有一种用法,就是把除了数字或者字母 或者特殊符号 以外的都给过滤出来。这个和过滤数字正好相反。
还有个操作就是 ^[^0-9] 这个字符串的意思就是以非数字的开头的行 过滤出来、
^ 这个字符 放在方括号外面 是以什么开头 放在里面就是取非。
grep ‘r.0‘ passwd 【.】点的意思就是任意一个字符,可以从操作中看出,r和o直接是任何字符都可以过滤出来。包括数字 特殊符号 还有. 本身、
grep ‘m
er‘ passwd
的意思是 在*前面的字符重复0-n次 这个n是表示多少次都可以。
【.*】组合起来就是 过滤所有字符,因为.表示任意字符。
{}在grep中直接写是没有任何意义的 就是一个花括号。 但是在正则中用法可以表示前面字符重复的一个范围,就是加上脱译。
如果觉得这样写很麻烦 加脱译符号很别扭, 可以用egrep 这样就不用脱译符号就可以识别了。
或者是不用egrep 用grep -E
也可以写多个字符 的重复范围,要加() 表示一个整体,加这个也要egrep 或者 -E 来脱译这个()。
和
挺像的, 想用+ 要脱译或者用egrep +号是前面的字符一次或者多次, 没有0。 (也就是说比如m
er er前面如果没有m 就是代表er前面为0,也会把er显示出来,但是+er的话 不显示0 就是只会显示 带有m和er 的字母组合) *是0到多次。
?表示在?前面的字符重复次数为0或者1 要么有 要么没有。(比如m?er er前面如果m很多 只会显示一个,)
| 在这里表示的意思是或者。
学习笔记第二十五节课
标签:
作业
原文地址:http://blog.51cto.com/13645927/2107869
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
分布式事务
2021-07-29
OpenStack云平台命令行登录账户
2021-07-29
getLastRowNum()与getLastCellNum()/getPhysicalNumberOfRows()与getPhysicalNumberOfCells()
2021-07-29
【K8s概念】CSI 卷克隆
2021-07-29
vue3.0使用ant-design-vue进行按需加载原来这么简单
2021-07-29
stack栈
2021-07-29
抽奖动画 - 大转盘抽奖
2021-07-29
PPT写作技巧
2021-07-29
003-核心技术-IO模型-NIO-基于NIO群聊示例
2021-07-29
Bootstrap组件2
2021-07-29
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!