找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 22738|回复: 4

[文本处理] 批处理怎样提取IP?

[复制链接]
发表于 2013-9-19 00:20:41 | 显示全部楼层 |阅读模式
源数据a.txt
  1. | 92.61.60.39:8888    | FPPX-2.10.1(10.7.0)                                          | ntk    |
  2. | 93.61.233.78:8888   | FPPX-2.9.0(1.6.2.13)                                         | ntk    |
  3. | 94.61.233.15:8888   | FPPX-2.9.0(1.6.2.13)                                         | ntk    |
  4. | 95.61.138.148:5060  | AVM Fon(Nov 18 2009)                                     | ntk    |
  5. | 96.61.138.119:5060  | Annex A 58.04.78                                         | ntk    |
  6. | 97.61.51.150:5060   | SPA2-5.2.10                                              | ntk    |
  7. | 98.61.114.134:5060  | Ast1.8.4.4~dfsg-2                                        | ntk    |
复制代码
目标数据 b.txt
  1. 92.61.60.39
  2. 93.61.233.78
  3. 94.61.233.15
  4. 95.61.138.148
  5. 96.61.138.119
  6. 97.61.51.150
  7. 98.61.114.134
复制代码
不知道 findstr加正则 能否实现 或者是有其他什么好办法 而且ip后面的数据中有(1.6.2.13)这样的内容 也许应该重点排除一下 请各位大侠不吝赐教啊
发表于 2013-9-19 03:25:54 | 显示全部楼层
  1. for /f "tokens=2 delims=: " %%a in ('findstr ":" a.txt') do echo %%a>>b.txt
复制代码
回复 1# syy718888
 楼主| 发表于 2013-9-19 07:08:30 | 显示全部楼层
二楼的朋友的办法感觉很适合这个例子 就是我的文档都比较大 处理速度会有些跟不上 不知还有没有更好的办法
发表于 2013-9-19 09:33:59 | 显示全部楼层
回复 3# syy718888
要想快一点就用第三方工具sed咯,通过IP地址前面的空格和后面的冒号来判断是否为想要的:
  1. sed -nr "s/.* (([0-9]{1,3}\.){3}[0-9]{1,3}):.*/\1/p" a.txt>b.txt
复制代码
 楼主| 发表于 2013-9-19 13:28:52 | 显示全部楼层
回复 4# weichenxiehou


    谢谢你的建议 我是个纯新手 这个工具还没有接触过 一定安装了体验一下
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-20 14:42 , Processed in 0.011229 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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