LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 729|回复: 5

请教一个shell 应该怎么写。

[复制链接]
发表于 2005-11-2 15:12:25 | 显示全部楼层 |阅读模式
文件名a
里边放着一群ip地址
123.32.56.07
200.43.87.12
240.54.09.09
...

文件b(要匹配的ip地址群)
123.32
65.43
240.54
...

文件c 结果
遍历一次a文件,如果a文件的ip匹配b文件的一个ip段,就把它写道c文件中。。。



请问这个怎么做?
发表于 2005-11-2 16:55:18 | 显示全部楼层

  1. for i in $(<fileb);do grep "^$i" filea;done>filec
复制代码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-11-2 19:21:39 | 显示全部楼层
sorry 这个好像有问题,例如:
B中有202.108
而A 中有100.233.202.108都匹配了或者
B中有202.1
而A中有202.102都匹配上了。。

^不是从头开始匹配吗?

另外,我得这个匹配的ip是一个网段,例如:202.108 - 202.110 ,这样应该怎么做啊?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-11-2 19:35:53 | 显示全部楼层
他好像是把. 当成通配符了,结果只要202().108都合适了
怎么能把.替换成\.
回复 支持 反对

使用道具 举报

发表于 2005-11-4 14:40:55 | 显示全部楼层
Post by fanf
他好像是把. 当成通配符了,结果只要202().108都合适了
怎么能把.替换成\.

!!!!!!!!!!
回复 支持 反对

使用道具 举报

发表于 2005-11-6 07:25:46 | 显示全部楼层
^:是每一行的开头
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表