linux 三剑客正则表达

  模糊匹配是全文匹配; *代表多个字符, ?一个字符

  正则表达是关键字匹配,是包含

  ^    开头

  $     结尾

  ^$    空行

  .     任意一个字符

  \     反转义

  *    前面一个字符重复0到多次

  \{m,n\} 前面的字符重复m到n次 egrep或sed -r可以去掉\

  \{m\}     前面字符重复了m次

  [a-c|0-9] a,b,c或者一个数字

  [^abc]  []之外的

 扩展正则:egrep,  grep -E,  sed -r

  +   前面字符重复至少一次

  ?   0或一个

  |   同时过滤多个字符串

  ()  分组过滤,向后引用 sed -nr 's#^ () $#\1#gp'

    

1.取IP地址

  ifconfig eth0 |sed -n '2p' |sed 's/^.*dr://g'|sed 's/  B.*$//g'

  ifconfig eth0|sed -nr 's#^.*dr:(.*) Bcast.*$#\1#gp' 

2.取文件权限

  stat /etc/hosts|sed -nr 's#^.*\(0(.*)/-.*$#\1#gp'

3./etc/passwd 第一列和最后一列替换

  sed -nr 's#^([^:]*)(:.*:)(/[^:]*)$#\3\2\1#gp' /etc/passwd

 

posted @ 2017-06-02 18:09  wangxingg  阅读(176)  评论(0编辑  收藏  举报