bash – Grep和打印参考
发布时间:2020-12-16 01:51:45 所属栏目:安全 来源:网络整理
导读:我有这个iptable日志: Feb 25 10:32:48 XXX: [414645.555838] FW: DEN TCP IN=eth0 OUT= MAC=XYZ SRC=1.1.1.1 DST=2.2.2.2 LEN=40 TOS=0x00 PREC=0x00 TTL=57 ID=0 DF PROTO=TCP SPT=80 DPT=51814 WINDOW=0 RES=0x00 RST URGP=0 我想grep 1.1.1.1和80(SRC和
我有这个iptable日志:
Feb 25 10:32:48 XXX: [414645.555838] FW: DEN TCP IN=eth0 OUT= MAC=XYZ SRC=1.1.1.1 DST=2.2.2.2 LEN=40 TOS=0x00 PREC=0x00 TTL=57 ID=0 DF PROTO=TCP SPT=80 DPT=51814 WINDOW=0 RES=0x00 RST URGP=0 我想grep 1.1.1.1和80(SRC和SPT字段). grep -oP 'SRC=([^ ]+).+SPT=([0-9]+)' /var/log/iptables.log 但它返回: SRC=1.1.1.1 DST=2.2.2.2 LEN=40 TOS=0x00 PREC=0x00 TTL=57 ID=0 DF PROTO=TCP SPT=80 如何获得$1和$2(参考匹配值)? 解决方法
一种方法:
sed -rn 's/.*SRC=([^ ]+).*SPT=([0-9]+).*/1 2/p' /var/log/iptables.log 您可以在脚本中读取src spt或类似的东西时将其管道.现在这当然不是很有效,因为模式中有三颗星,所以如果性能是一个问题,你可以考虑使用像cut这样的东西来提取某些字段: cut -d' ' -f12,21 /var/log/iptables.log 不确定日志格式是否足够一致以使其正常工作. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- angular6 升级到 angular7+ 最新Ng-zorro
- 上一篇,在Websphere上使用Axis做的客户端调用Webservice要进
- AngularJS在一个页面内的多个ng-app
- 我怎样才能获得MinTTY(Cygwin终端)在新窗口中打开gvim?
- angularjs – 尝试基于常量在控制器中动态设置templateUrl
- Scala groupBy mapValues映射回初始格式.有没有更好的办法
- 六、YUM仓库
- 如何在Angular 2中为开发(而不是测试)提供模拟服务?
- Angular 2跨组件共享websocket服务
- Angular:量角器 – count()没有解析并导致超时