[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理如何将同网段的连续的ip地址进行合并

由于站点需要判断地区调转,而且要比较精准。
我把IP数据库分了几份,但是数据太大,手动整理效率太低。
求大神帮忙。给批了。

例子
111.222.1.1 111.222.233.1
111.222.233.2 111.223.1.1
111.223.1.2 111.224.220.5
122.122.122.1 122.123.123.123
123.3.3.3 123.4.4.4
123.4.4.5 123.4.4.6
123.4.4.7 123.11.12.13

运行结果
111.222.1.1 111.224.220.5
122.122.122.1 122.123.123.123
123.3.3.3 123.11.12.13

每段IP中间是TAB

求大神帮忙。。


我是想把多段连接的IP段简化成一段。前提是中间不间断。
大家知道IP是255进制的,我把一个小样板传上来了,里面有样板以及结果。。谢谢大家。

不考虑最后一位为0的退位计算:
  1. @echo off&setlocal enabledelayedexpansion
  2. >b.txt (
  3. for /f "tokens=1,2" %%a in (a.txt) do (
  4.    set "d1=%%~na"&set "d2=%%~nb"
  5.    set "p1=%%~xa"&set "p2=%%~xb"
  6.    set /a "n1=!p1:.=!-1,n2=!p2:.=!-1"
  7. :test
  8.    if !d1!.!n1! neq !end! (
  9.       if defined start echo;!start! !end!
  10.       set start=%%a
  11.    )
  12.    set end=!d2!!p2!
  13. ))
  14. if defined d1 (
  15.    set "d1="
  16.    call :test>>b.txt 2>nul
  17. ) else exit/b
  18. pause
复制代码

TOP

我估计没人看得懂你想干嘛!~
最起码的,你要告诉大家你的结果是怎么从样本产生的?
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

TOP

没人能解决吗??

TOP

回复 4# BAT-VBS


    大湿,,可以搞定吗??

TOP

回复 4# BAT-VBS


    样板已到

TOP

1、请用文字描述一下规律,不要让别人去猜。
2、请选取一段真实文本,压缩之后传上来,以便测试。

TOP

回复 2# qwe13518


    在哪里???????????

TOP

加KK63420978 讨论

TOP

返回列表