CentOS7 正则表达式-egrep,sed,awk

egrep  grep -E

本质区别egrep不需要加脱意字符

‘r.t’ .表示任意一个字符特殊字符也满足  不能用?

‘r*t’ *表示0个或任意个前面的字符

‘r.*t’ rt中间0到任意个字符,相当于匹配*个. 空行也包含在内 贪婪匹配

‘r+o’ + 表示一个或多个前面的字符 grep可以使用脱意字符使用\+

‘参数1|参数2’   参数1或者参数2

 

egrep ‘r{3}’  {} egrep 不需要加脱意字符   匹配3个r的行

egrep ‘r(oo){3}’   ()是把括号内容看成一个单元

 

sed  

‘p‘ 匹配打印

‘d’ 删除

-i 直接更改

sed ‘s/要替换/替换成什么/g’ 文件名  g是全局的意思

root:x:::root:/root:/bin/bash   把第一个冒号前的和最后一个冒号后的替换

心得:可以先写命令 最后再加转义字符不然容易混乱

要替换的内容有/的时候也可以用#替代/

# head passwd | sed's/\(^[^:]*\)\(:.*:\)\([^:]*$\)/\3\2\1/'

 

awk

-F ‘:’ 指定分隔符。如果不加-F则以空格或者tab来作为默认分隔符

print 打印某个字段

print的动作要用{ }括起来。打印自定义内容时需要把自定义内容用双引号括起来

$1为第一个字段  $2为第二个字段  $0表示整行

awk可以用逻辑符号进行判断。

==表示等于

!=表示不匹配

另外还有>,>=,<,<=

&& 表示并且

|| 表示或者

 

awk内置变量

NF 表示用分隔符分割后一共有多少段,列号

NR 表示行号

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值