linux运维正则表达式实战视频观看地址
http://edu.51cto.com/course/course_id-1959.html
QQ交流群 384467551

linux运维正则表达式实战

1.什么是正则表达式?
简单的说,正则表达式就是一套处理大量的字符串而定义的规则和方法。
例如:假设 @代表12345
通过正则表达式这些特殊符号,我们可以快速的过滤、替换需要的内容。
linux正则一般以行为单位处理的。

2.为什么要学习正则表达式?
再工作中,我们做linux运维工作,时刻面对着大量的日志,程序,命令的输出。
迫切的需要过滤我们需要的一部分内容,甚至是一个字符串。

3.理解两个误区注意事项:
a.正则表达式的应用非常广泛,存在于各种语言中,PERL,PHP,JAVA等。
我们今天给大家讲解的就是linux的正则表达式,系统运维工作中常用的正则表达式
常用的正则表达式的命令为grep(egrep),sed,awk。
linux的三剑客很牛,要想三剑客玩得更好,那就一定离不开正表达式。

b.linux正则表达式和我们命令行中其他的命令使用的通配符是有本质区别的。

4.实验的3个注意事项:
a.linux正则一般以行为单位处理的。
b.alias grep='grep --color=auto'
c.注意字符集,LC_ALL=C,不是必须

5.linux正则表达式细节
基于grep来讲的。
基础正则表达式:BRE(basic regular expression)
1)^word 表示搜索以word开头的内容。
2)word$ 表示搜索以word结尾的内容。
3)^$    表示空行,不是空格。
4).      代表且只能代表任意一个字符。(当前目录,加载文件)
5)\      转义字符,让有着特殊身份意义的字符,脱掉马甲,还原原型。
          例如:\.只表示小数点,还原原始小数点的意义。
6)*      重复0个或多个前面的一个字符。不代表所有了。
7).*     匹配所有的字符。^.* 任意多个字符开头。
8)[abc]  匹配字符集合内任意一个字符[a-z]
9)[^abc] ^再中括号里面表示非,不包含a或b或c。
10){n,m} 重复n到m次,前一个字符。
    {n,} 至少N次,多了不限。
    {n}  N次
    {,m} 至多m次,少了不限。
   注意:grep 要对{转义} \{\},egrep(grep -E)不需要转义
基础的正则就讲完了。
6.grep命令参数小结
-v 排除匹配的内容
-E 支持扩展的正则表达式
-i 忽略大小写
-o 只输出匹配的内容
--color=auto 匹配的内容显示颜色。
-n 再行首显示行号

7.取IP地址练习正则:

sed基本语法:
s替换
g全局
-i 修改文件
-n 取消默认输出
 p 打印内容
-r 支持扩展正则

考题:
ifconfig eth0:
         inet addr:10.0.0.7  Bcast:10.0.0.255  Mask:255.255.255.0
目标:10.0.0.7
过滤思想:
目标之前的内容“         inet addr:” 就用 ^.*addr:
目标结尾的内容"  Bcast:10.0.0.255  Mask:255.255.255.0"   就用Bc.*$
命令实战:
特殊直接sed取行*:
[root@oldboylinux oldboy]# ifconfig eth0|sed -n '2s#^.*addr:##gp'|sed 's#  Bc.*$##g'
10.0.0.7
[root@oldboylinux oldboy]# ifconfig eth0|sed -n '2s#^.*addr:\(.*\)  Bc.*$#\1#gp'
10.0.0.7
[root@B ~]# ifconfig eth0|sed -rn '2s#^.*addr:(.*)  Bc.*$#\1#gp'
10.0.0.8
[root@oldboylinux oldboy]# ifconfig eth0|sed -n '2s#^.*addr:\([0-9]\{,3\}\.[0-9]\{,3\}\.[0-9]\{,3\}\.[0-9]\{,3\}\)  Bc.*$#\1#gp'
10.0.0.7

考题:
请用ifconfig,输出ip及广播地址
sed  -n 's#\(dddd\)\(ffff\)#\1\2#gp' 同样适合grep。
命令:
[root@B ~]# ifconfig eth0|sed -nr 's#^.*dr:(.*) [a-zA-Z].*t:(.*)  Ma.*$#\1\2#gp'  
10.0.0.8 10.0.0.255

扩展的正则表达式:grep -E 以及egrep
后期有机会再分享吧!
下面是后补的,讲座没时间讲了。
8.扩展的正则表达式:ERE
1)+ 重复一个或一个以上前面的字符。
2)? 重复0个或一个0前面的字符。
3)|用或的方式查找多个符合的字符串
4)() 找出 “用户组”字符串。
另外一个了解的知识:posix方括号字符集(挺鸡肋的知道就得)
       [:alnum:]             [:lower:]          [:xdigit:]
       [:alpha:]             [:print:]            [:blank:]
       [:blank:]             [:punct:]
       [:cntrl:]             [:space:]
       [:graph:]             [::upper:]
5)man bash
   man grep

linux运维正则表达式技术分享相关推荐

  1. 常见Linux运维面试题分享

    学习Linux进入工作岗位的过程必定是要经过面试.与其他技术岗位相同.Linux运维也要经理人力面试和技术面试.对于初级运维工程师面试题目相对也很简单,但是同样有很多朋友在简单的问题上犯错.下面为大家 ...

  2. linux学习项目,[ Linux运维学习 ] 路径及实战项目合集

    我们知道运维工程师(Operations)最基本的职责就是负责服务的稳定性并确保整个服务的高可用性,同时不断优化系统架构.提升部署效率.优化资源利用率,确保服务可以7*24H不间断地为用户提供服务. ...

  3. Linux 运维工程师入门须掌握的 10 个技术点

    Linux系统的学习,可以选用redhat或centos,特别是centos在企业中用得最多,当然还会有其它版本的,但学习者还是以这2个版本学习就行,因为这两个版本都是兄弟,没区别的,有空可以再研究一 ...

  4. 10K入职linux运维岗位小伙伴感谢信及面试经历分享

    尊敬的老男孩老师和同学们: 您们好! 首先:老师,请您原谅我的不辞而别,由于新公司项目周期比较紧,我不得不尽快投入生产工作,很遗憾,运维班的期末架构考试未能按时完成,就进入工作了,我会克服一切困难完成 ...

  5. 亲爱的,我是一条Linux运维技术学习路径呀。

    根据我的经验,人在年轻时,最头疼的一件事就是决定自己这一生要做什么.在这方面,我倒没有什么具体的建议:干什么都可以,但最好不要写小说,这是和我抢饭碗.总而言之,干什么都是好的:但要干出个样子来,这才是 ...

  6. 【微学堂】线上Linux服务器运维安全策略经验分享

    技术转载:https://mp.weixin.qq.com/s?__biz=MjM5NTU2MTQwNA==&mid=402022683&idx=1&sn=6d403ab447 ...

  7. 视频教程-网管转行linux运维并做到运维经理经验分享-Linux

    网管转行linux运维并做到运维经理经验分享 Linux运维经理,高级运维经理,长期从事商城等知名企业的千万级.亿万级PV门户网站维护工作. 专注于Linux服务器架构运维近8年,擅长系统高并发.超多 ...

  8. 入门Linux运维工程师,必须要掌握的10个技术点

    Linux系统的学习,可以选用redhat或centos,特别是centos在企业中用得最多,当然还会有其它版本的,但学习者还是以这2个版本学习就行,因为这两个版本都是兄弟,没区别的,有空可以再研究一 ...

  9. Linux运维工程师入门须掌握的10个技术点

    ↑ 点击上方"运维技术"关注我们 本篇文章来源于专业运维技术公众号: 运维技术 ,以下为全文: 今天跟大家讨论下linux运维工程师,对这方面的心得,现在我说说要掌握哪方面的工具吧 ...

最新文章

  1. JVM学习(2)——技术文章里常说的堆,栈,堆栈到底是什么,从os的角度总结
  2. OpenGL 坐标系统(Perspective)
  3. win7下创建逻辑分区
  4. QBXT Day 5图论相关
  5. Apple Pay 支付集成
  6. 网约车司机无证最低罚款拟从10000元降至200元
  7. hypermesh 连接单元_船舶方向测量单元motion sensor
  8. gsea富集分析结果怎么看_简单的GSEA分析
  9. 修改手机屏幕刷新率_240Hz 超高刷新率,这手机屏幕比电竞专业屏还牛
  10. SQL Server 2005 中的客户端 XML 处理
  11. 更改Wamp下网站地址栏图标的显示
  12. 浏览器推荐及浏览器内核
  13. 基于大数据技术的全国高速公路通行数据 动态监测平台建设
  14. 斯伦贝谢好进吗_拼集市 环球购30%智商税你还交吗
  15. p2p终结者在交换机上的机器用P2P终结者
  16. 如何转让个人股权?个人股权转让流程
  17. Arduino ESP32 TFTLCD ST7735 代码和原理
  18. python使用opencv实现人脸检测
  19. 全志T507-屏幕触摸旋转,取消光标小技巧说明-飞凌嵌入式知识库
  20. mac一体机win7下调节亮度方法

热门文章

  1. django导入mysql_django如何直接对数据库进行插入操作?
  2. UART协议概述与实现
  3. 20200805:Java拓扑排序实现力扣207课程表
  4. 20200210:(leetcode 623)在二叉树中增加一行
  5. 2019-0405视觉SLAM的学习第四讲
  6. html%3c arial%3e,【博客园】样式美化+网站统计访问+添加网易云背景音乐
  7. socketio mysql_Golang + Socket.io
  8. 【转载】中国煤层气资源量
  9. 灰度实战(四):Apollo配置中心(4)
  10. 英语总结系列(二十四):历经GCT的一月