首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >以下logs的正则表达式可能是什么?

以下logs的正则表达式可能是什么?
EN

Stack Overflow用户
提问于 2017-03-17 18:47:45
回答 3查看 52关注 0票数 0

我想删除第一个括号中的数字,并保持所有其余的括号完好无损。

代码语言:javascript
复制
Mar 17 00:03:13   %ASA-5-106100: access-list   permitted tcp  10.252.0.165(50811) ->  172.19.26.33(4902) 
Mar 17 00:03:16   %ASA-5-106100: access-list   permitted tcp  10.252.0.166(54563) ->  172.19.26.33(4902) 
Mar 17 00:03:28   %ASA-5-106100: access-list   permitted tcp  10.252.0.222(38071) ->  172.19.26.33(4902) 
Mar 17 00:03:41   %ASA-5-106100: access-list   permitted tcp  10.252.0.222(38074) ->  172.19.26.33(4902) 
Mar 17 00:03:45   %ASA-5-106100: access-list   permitted tcp  10.252.0.221(17868) ->  172.19.26.33(4902) 
Mar 17 00:03:58   %ASA-5-106100: access-list   permitted tcp  10.252.0.166(54572) ->  172.19.26.33(4902) 
Mar 17 00:03:58   %ASA-5-106100: access-list   permitted tcp  10.252.0.166(54573) ->  172.19.26.33(4902) 
Mar 17 00:03:58   %ASA-5-106100: access-list   permitted tcp  10.252.0.166(54574) ->  172.19.26.33(4902) 
Mar 17 00:04:14   %ASA-5-106100: access-list   permitted tcp  10.252.0.165(50826) ->  172.19.26.33(4902) 
Mar 17 00:04:16   %ASA-5-106100: access-list   permitted tcp  10.252.0.166(54580) ->  172.19.26.33(4902) 
Mar 17 00:04:28   %ASA-5-106100: access-list   permitted tcp  10.252.0.222(38088) ->  172.19.26.33(4902) 
Mar 17 00:04:45   %ASA-5-106100: access-list   permitted tcp  10.252.0.221(17881) ->  172.19.26.33(4902) 

我想保持(4902)完好无损,但也想去掉第一个括号和它们的数字。

这样使用正确吗?

代码语言:javascript
复制
awk '{sub('()'..... dst'()'," dst")}1'
EN

回答 3

Stack Overflow用户

发布于 2017-03-17 18:51:30

您可以使用sed

代码语言:javascript
复制
sed 's/([0-9]*)//' logfile
票数 4
EN

Stack Overflow用户

发布于 2017-03-17 18:54:43

在awk中去掉第一个括号和它们的数字:

代码语言:javascript
复制
$ awk '{sub(/\([^)]*\)/,"")}1' foo
Mar 17 00:03:13   %ASA-5-106100: access-list   permitted tcp  10.252.0.165 ->  172.19.26.33(4902) 
Mar 17 00:03:16   %ASA-5-106100: access-list   permitted tcp  10.252.0.166 ->  172.19.26.33(4902) 
票数 2
EN

Stack Overflow用户

发布于 2017-03-17 18:58:46

@Bhavik:试试:

代码语言:javascript
复制
awk '{sub(/\([0-9]+\)/,"");print}'   Input_file

它删除(所有数字,然后)的第一个匹配项。然后,它打印Input_file中的代码行。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42855478

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档