中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 处理IP数据库(三十万条记录)
« [1] [2] »
作者:
标题: 处理IP数据库(三十万条记录) 上一主题 | 下一主题
yishanju
银牌会员

[b]看你妹啊[/b]


积分 1488
发帖 1357
注册 2006-5-20
状态 离线
『楼 主』:  处理IP数据库(三十万条记录)

我自己在批处理中使用FR.EXE 完成了本次的数据处理,但是还没有实现IP数据库的精简。希望下一次还能更加海量的数据需要处理。更新时间:16:06 2010-5-9


把纯真IP数据库处理需要的内容。

处理规则:
1、把不包含中国省市地名的记录删掉。一楼已经列出大部份需要删除的信息。

2、把省份名称拆出来放在一个字段里,把城市名称放到另一个字段里。
3、处理后的信息要包含有:省、市、ip开始地址、ip结束地址

4、直辖市的省份名称和城市名称一样。
5、例如处理成这样的格式:
省 市 ip开始地址 ip结束地址
湖南 张家界 211.0.0.1 211.255.255.255
北京 北京 211.100.26.179 211.100.26.190

6、如果有记录只精确到省份,城市则以"-"代替,输出成这样:
广西 - 222.217.171.167 222.217.171.255

7、最终输出的文件格式可以是MDB,EXCEL,CSV,MSSQL或者其它。
8、把同一个市,并且是连接的IP进行精简。

下载区:

纯真IP数据库---自带的SHOWIP.EXE可以把IP数据解压为txt格式文本
=== http://update.cz88.net/soft/qqwry.rar


hrsIP---纯真IP数据转ACCESS MDB数据库
=== http://img3.k68-img.cn/k68over20 ... n_2010571240_01.zip

文本编辑器win32pad ---可以打开20M的文本不假死,这个工具本身才33K,绿色解压即用
=== http://www.gena01.com/win32pad/win32pad_1_5_10_4.zip

FR.EXE ---正则查找替换命令行工具===
http://baiy.cn/utils/fr/fr.rar

从SQL SERVER 2000中提取的OSQL.EXE和ISQL.EXE---方便在批处理中连接SQLSERVER并执行SQL命令
=== http://img2.k68.cn/k68over2008-1 ... 200921311843_01.rar

OleDbCmd---在批处理中连接MDB数据和执行SQL命令
===下载页面: http://sourceforge.net/projects/oledbcmd/

以下是我整理出来的,您如果发现不全,能提出来,定非常感谢。

包含以下内容的记录则删除掉:
朝鲜
韩国
日本
菲律宾
越南
老挝
柬埔寨
缅甸
泰国
马来西亚
文莱
新加坡
印度尼西亚
东帝汶
尼泊尔
不丹
孟加拉国
印度
巴基斯坦
斯里兰卡
马尔代夫
哈萨克斯坦
吉尔吉斯斯坦
塔吉克斯坦
乌兹别克斯坦
土库曼斯坦
阿富汗
伊拉克
伊朗
叙利亚
约旦
黎巴嫩
以色列
巴勒斯坦
阿拉伯
巴林
卡塔尔
科威特
阿联酋
阿曼
也门
格鲁吉亚
亚美尼亚
阿塞拜疆
土耳其
塞浦路斯
芬兰
瑞典
挪威
冰岛
丹麦
爱沙尼亚
拉脱维亚
立陶宛
白俄罗斯
俄罗斯
乌克兰
摩尔多瓦
波兰
捷克
斯洛伐克
匈牙利
德国
奥地利
瑞士
列支敦士登
英国
爱尔兰
荷兰
比利时
卢森堡
法国
罗马尼亚
保加利亚
塞尔维亚
黑山
马其顿
阿尔巴尼亚
希腊
斯洛文尼亚
克罗地亚
波斯尼亚
黑塞哥维那
波黑
意大利
梵蒂冈
圣马力诺
马耳他
西班牙
葡萄牙
安道尔
摩纳哥
埃及
利比亚
突尼斯
阿尔及利亚
摩洛哥
埃塞俄比亚
厄立特里亚
索马里
吉布提
肯尼亚
坦桑尼亚
乌干达
卢旺达
布隆迪
塞舌尔
苏丹
乍得
中非
喀麦隆
赤道几内亚
加蓬
刚果
圣多美
普林西比
毛里塔尼亚
塞内加尔
冈比亚
马里
布基纳法索
几内亚
几内亚比绍
佛得角
塞拉利昂
利比里亚
科特迪瓦
加纳
多哥
贝宁
尼日尔
赞比亚
安哥拉
津巴布韦
马拉维
莫桑比克
博茨瓦纳
纳米比亚
南非
斯威士兰
莱索托
马达加斯加
科摩罗
毛里求斯
澳大利亚
新西兰
巴布亚新几内亚
所罗门群岛
瓦努阿图
密克罗尼西亚
马绍尔群岛
帕劳
瑙鲁
基里巴斯
图瓦卢
萨摩亚
斐济群岛
汤加
库克群岛
纽埃
加拿大
美国
墨西哥
危地马拉
伯利兹
萨尔瓦多
洪都拉斯
尼加拉瓜
哥斯达黎加
巴拿马
巴哈马
古巴
牙买加
海地
多米尼加
安提瓜
巴布达
圣基茨
尼维斯
多米尼克
圣卢西亚
圣文森特
格林纳丁斯
格林纳达
巴巴多斯
特立尼达
多巴哥
哥伦比亚
委内瑞拉
圭亚那
苏里南
厄瓜多尔
秘鲁
玻利维亚
巴西
智利
阿根廷
乌拉圭
巴拉圭
AFRINIC
iana
纯真网络
CZ88.NET
尼日利亚
蒙古
北美
欧洲
英格兰
土尔其
中东
法罗
RIPE
Teleglobe
联合国
波多
直布罗陀
APNIC
未分配
局域网
亚洲
非洲
大洋
南极
南美
中国
新喀里多尼亚
NIC
法属
玻利尼西
雅虎
孟加拉
留尼汪
亚太
xrea.com
华.地区

中国省份列表.txt:
河北
山西
辽宁
吉林
黑龙江
江苏
浙江
安徽
福建
江西
山东
河南
湖北
湖南
广东
广西
海南
四川
贵州
云南
西藏
陕西
甘肃
青海
宁夏
新疆
台湾

直辖市:
北京
天津
上海
重庆
香港
澳门

自治区:
内蒙古
广西
新疆
宁夏
西藏

[ Last edited by yishanju on 2010-5-9 at 16:31 ]




有问题请发论坛或者自行搜索,再短消息问我的统统是SB
2010-5-7 01:56
查看资料  发短消息 网志   编辑帖子  回复  引用回复
yishanju
银牌会员

[b]看你妹啊[/b]


积分 1488
发帖 1357
注册 2006-5-20
状态 离线
『第 2 楼』:  

把纯真IP数据库处理需要的内容。

处理规则:
1、把不包含中国省市地名的记录删掉。一楼已经列出大部份需要删除的信息。

2、把省份名称拆出来放在一个字段里,把城市名称放到另一个字段里。
3、处理后的信息要包含有:省、市、ip开始地址、ip结束地址

4、直辖市的省份名称和城市名称一样。
5、例如处理成这样的格式:
省 市 ip开始地址 ip结束地址
湖南 张家界 211.0.0.1 211.255.255.255
北京 北京 211.100.26.179 211.100.26.190

6、如果有记录只精确到省份,城市则以"-"代替,输出成这样:
广西 - 222.217.171.167 222.217.171.255

7、最终输出的文件格式可以是MDB,EXCEL,CSV,MSSQL或者其它。

[ Last edited by yishanju on 2010-5-7 at 14:50 ]




有问题请发论坛或者自行搜索,再短消息问我的统统是SB
2010-5-7 01:57
查看资料  发短消息 网志   编辑帖子  回复  引用回复
yishanju
银牌会员

[b]看你妹啊[/b]


积分 1488
发帖 1357
注册 2006-5-20
状态 离线
『第 3 楼』:  

IP数据库经过处理后已经得到了我们想要的格式。
接下来是要精简数据库,把同一个地址,并且连续的IP地址合并起来。
谁要的好想法或者代码能实现IP数据库的精简?

[ Last edited by yishanju on 2010-5-10 at 12:58 ]




有问题请发论坛或者自行搜索,再短消息问我的统统是SB
2010-5-7 01:57
查看资料  发短消息 网志   编辑帖子  回复  引用回复
yishanju
银牌会员

[b]看你妹啊[/b]


积分 1488
发帖 1357
注册 2006-5-20
状态 离线
『第 4 楼』:  

再占一楼。




有问题请发论坛或者自行搜索,再短消息问我的统统是SB
2010-5-7 01:57
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 5 楼』:  

原始数据是哪个?



2010-5-7 14:31
查看资料  发短消息 网志   编辑帖子  回复  引用回复
yishanju
银牌会员

[b]看你妹啊[/b]


积分 1488
发帖 1357
注册 2006-5-20
状态 离线
『第 6 楼』:  

就是纯真IP数据库,处理成要求的格式




有问题请发论坛或者自行搜索,再短消息问我的统统是SB
2010-5-7 14:49
查看资料  发短消息 网志   编辑帖子  回复  引用回复
yishanju
银牌会员

[b]看你妹啊[/b]


积分 1488
发帖 1357
注册 2006-5-20
状态 离线
『第 7 楼』:  

可以把纯真IP数据库导入SQL,EXCEL,ASSECC mdb,csv等等然后再处理都可以。




有问题请发论坛或者自行搜索,再短消息问我的统统是SB
2010-5-7 16:04
查看资料  发短消息 网志   编辑帖子  回复  引用回复
radem
高级用户

CMD感染者


积分 691
发帖 383
注册 2008-5-23
状态 离线
『第 8 楼』:  

以前常用IPConv来转换



2010-5-7 20:02
查看资料  发短消息 网志   编辑帖子  回复  引用回复
terse
银牌会员





积分 2404
发帖 946
注册 2005-9-8
状态 离线
『第 9 楼』:  


findstr /rivg:删除内容文档 原始ip.txt>tem_ip
然后FOR里处理tem_ip



简单!简单!再简单!
2010-5-8 11:46
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
yishanju
银牌会员

[b]看你妹啊[/b]


积分 1488
发帖 1357
注册 2006-5-20
状态 离线
『第 10 楼』:  

删除多余信息:
这个代码要慢好多。
@echo off
title 删除多余记录

copy 2.txt 3.txt /y

setlocal EnableDelayedExpansion

for /f %%a in (国家列表.txt) do (
        set /a n=!n!+1
        echo !n!
        fr 3.txt -ric:".*%%a.*\r\n" -t:""
       
)
echo 完成!

pause





有问题请发论坛或者自行搜索,再短消息问我的统统是SB
2010-5-8 21:09
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 11 楼』:  

15963行开始,有很多类似以下内容:
59.66.0.0       59.66.32.255    清华大学  CZ88.NET

如何处理?



2010-5-8 22:28
查看资料  发短消息 网志   编辑帖子  回复  引用回复
terse
银牌会员





积分 2404
发帖 946
注册 2005-9-8
状态 离线
『第 12 楼』:  

用findstr /rivg:国家列表.txt 原始ip.txt>tem_ip
这个速度并不理想
换个思路
把省市列表和直辖市合并为 HB.txt
findstr /rig:HB.txt 原始IP.txt>temp_ip.txt
这个速度明显提高了



简单!简单!再简单!
2010-5-8 22:47
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
terse
银牌会员





积分 2404
发帖 946
注册 2005-9-8
状态 离线
『第 13 楼』:  

本想用"省市" 作分隔符在 FOR里处理   发现有记录信息 没有省市 如:西藏拉萨  宁夏银川   上海交通大学。。
不知道此类怎么处理



简单!简单!再简单!
2010-5-8 23:18
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
yishanju
银牌会员

[b]看你妹啊[/b]


积分 1488
发帖 1357
注册 2006-5-20
状态 离线
『第 14 楼』:  



  Quote:
Originally posted by HAT at 2010-5-8 22:28:
15963行开始,有很多类似以下内容:
59.66.0.0       59.66.32.255    清华大学  CZ88.NET

如何处理?

暂时先留着吧。




有问题请发论坛或者自行搜索,再短消息问我的统统是SB
2010-5-8 23:20
查看资料  发短消息 网志   编辑帖子  回复  引用回复
yishanju
银牌会员

[b]看你妹啊[/b]


积分 1488
发帖 1357
注册 2006-5-20
状态 离线
『第 15 楼』:  



  Quote:
Originally posted by terse at 2010-5-8 23:18:
本想用"省市" 作分隔符在 FOR里处理   发现有记录信息 没有省市 如:西藏拉萨  宁夏银川   上海交通大学。。
不知道此类怎么处理

这就是我为什么要这么费劲把国家列表,和省份列表整理出来的原因了。




有问题请发论坛或者自行搜索,再短消息问我的统统是SB
2010-5-8 23:22
查看资料  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: