码迷,mamicode.com
首页 > 系统相关 > 详细

Linux学习-09-学习正则表达式-1

时间:2015-07-13 18:55:30      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:表达式   linux   

grep进阶

截取:dmesg(列出讯息) |grep ‘内容‘

-A 后面加数字 after 后面几行

-B 后面加数字 befor后面几行

寻找regular_express.txt 中的‘the‘行

cat regular_express.txt |grep ‘the‘

grep ‘the‘ regular_express.txt

grep -nv (加行号,反选)‘the‘ regular_express.txt

grep -ni (加行号,不区分大小写)‘the‘ regular_express.txt

搜寻[]括号中任何一个字符

grep -n ‘t[ae]st‘ regular_express.txt


grep -n ‘oo‘ regular_express.txt

grep -n ‘[^g]oo‘ regular_express.txt

          反向选择,  oo前不带字符g

grep -n ‘[^a-z]oo‘ regular_express.txt

              不选小写

grep -n ‘[0-9]‘ regular_express.txt

[a-z],[A-Z],[0-9]方式表示


grep -n ‘^the‘ regular_express.txt

^行首   [^]反向选择

grep -n ‘\.$‘ regular_express.txt

$行尾 .有特殊意思\来跳脱


grep -n ‘g..d‘ regular_express.txt

.小数点代表一定有一个任意字符

grep -n ‘ooo*‘ regular_express.txt

*重复前面一个字符0-无穷多次数


grep -n ‘goo*g‘ regular_express.txt

grep -n ‘g.*g‘ regular_express.txt

限定连续字符范围{}

{}有特殊含义使用前需\跳脱

grep -n ‘o\{2\}‘ regular_express.txt

grep -n ‘go\{2,5\}g‘ regular_express.txt

基础正觃表示法字符汇整 (characters) P427


sed工具,用法

以行为单位 新增,删除

nl /etc/passwd | sed ‘2,5d‘

sed 动作接‘’ 2-5行d删除

nl regular_express.txt |sed ‘3,$d‘

                                    删除第三行到最后行

nl /etc/passwd | sed ‘2a drink tea‘

                                  第2行后加上drink tea

nl /etc/passwd | sed ‘2i drink tea‘   

                                  第2行前加上drink tea


nl /etc/passwd | sed ‘2a Drink tea or ......\ 

> drink beer ?‘

                                                               \增加新行


以行为单位 取代 显示

nl /etc/passwd | sed ‘2,5c No 2-5 number‘

                                  2-5行c取代 

nl /etc/passwd | sed -n ‘5,7p‘

                                   安静模式   5-7行显示 其他不显示

部分数据搜寻 取代

sed ‘s/要被取代的字符串/新的字符串/g‘


ifconfig eth1 |grep ‘inet addr‘|sed ‘s/^.*addr://g‘| sed ‘s/Bcast.*$//g‘

                                        取代 add包括前面任何          取代Bcast包括后面任何

直接修改档案内容(危险)


sed -i

sed -i ‘s/\.$/\!/g‘ regular_express.txt

取代行尾. 为!


延伸正则表达式

egrep P432

格式化打印






Linux学习-09-学习正则表达式-1

标签:表达式   linux   

原文地址:http://koishi.blog.51cto.com/4885806/1673823

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!