免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 34022 | 回复: 17
打印 上一主题 下一主题

在grep中,如何用正则表达式严格匹配IP地址。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-02-23 15:38 |只看该作者 |倒序浏览
more /var/log/messages|grep -p '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.'

不可以阿。。
好像grep不支持{1,3}这个表达式??

[ 本帖最后由 lijietz 于 2006-2-23 15:39 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2006-02-23 15:40 |只看该作者
[root@testdb log]# more /var/log/messages|sed -n '/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\./p'
[root@testdb log]#

sed好像也不支持。。

哪位达人告诉我该如何处理阿?

论坛徽章:
0
3 [报告]
发表于 2006-02-23 15:45 |只看该作者
[root@testdb log]# grep --version
grep (GNU grep) 2.5.1

Copyright 1988, 1992-1999, 2000, 2001 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

[root@testdb log]#

论坛徽章:
0
4 [报告]
发表于 2006-02-23 15:57 |只看该作者
0-9肯定不对呀,人家IP可是255内的哦。

论坛徽章:
0
5 [报告]
发表于 2006-02-23 15:59 |只看该作者
来个perl的先,楼下的续。

#!/usr/bin/perl -w

$file = $ARGV[0];

open( CURRENTFILE, "$file");
open( OUTFILE, ">outfile" );

while ( <CURRENTFILE> ) {

$_ =~ s/.*(\b((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b).*/$1/;

print OUTFILE $_;

}

close( CURRENTFILE );
close( OUTFILE );

论坛徽章:
0
6 [报告]
发表于 2006-02-23 16:06 |只看该作者
grep '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' INPUT_FILE

论坛徽章:
0
7 [报告]
发表于 2006-02-23 16:07 |只看该作者
原帖由 wb4deng 于 2006-2-23 16:06 发表
grep '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' INPUT_FILE


多谢,我刚才也弄过了,好像没提取出来。
运行了您的脚本就可以。

找原因ing..

论坛徽章:
0
8 [报告]
发表于 2006-02-23 16:09 |只看该作者
原帖由 lijietz 于 2006-2-23 15:45 发表
[root@testdb log]# grep --version
grep (GNU grep) 2.5.1

Copyright 1988, 1992-1999, 2000, 2001 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There ...


grep 要用 \{...\}

用egrep吧,直接 {...}

论坛徽章:
7
荣誉版主
日期:2011-11-23 16:44:17子鼠
日期:2014-07-24 15:38:07狮子座
日期:2014-07-24 11:00:54巨蟹座
日期:2014-07-21 19:03:10双子座
日期:2014-05-22 12:00:09卯兔
日期:2014-05-08 19:43:17卯兔
日期:2014-08-22 13:39:09
9 [报告]
发表于 2006-02-24 10:39 |只看该作者

论坛徽章:
0
10 [报告]
发表于 2009-05-23 12:04 |只看该作者
255的问题如何解决呢
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP