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

[文本处理] [已解决]批处理如何去除IP地址前面3段相同行?

[复制链接]
发表于 2012-1-30 23:19:36 | 显示全部楼层 |阅读模式
例如文本内容:

58.18.22.133
58.18.22.142
58.18.32.12
58.18.34.142
58.18.70.69
58.18.104.58
58.18.104.212
将前面相同的3段行去除并输出:
58.18.32.12
58.18.34.142
58.18.70.69

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2012-1-31 18:24:07 | 显示全部楼层

  1. @echo off
  2. for /f "tokens=1-4 delims=." %%i in (a.txt) do set /a .%%i.%%j.%%k+=1
  3. (for /f "tokens=1-4 delims=.=" %%i in ('set .') do if %%l==1 findstr "%%i.%%j.%%k" a.txt)>$
  4. move $ a.txt
复制代码

评分

参与人数 1技术 +1 收起 理由
Batcher + 1 乐于助人

查看全部评分

发表于 2012-1-31 22:04:09 | 显示全部楼层
  1. gawk -F. "NR==FNR{a[$1.$2.$3]++;next}a[$1.$2.$3]==1" a.txt a.txt >b.txt
复制代码

评分

参与人数 1技术 +1 收起 理由
Batcher + 1 乐于助人

查看全部评分

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

本版积分规则

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

GMT+8, 2026-3-18 20:48 , Processed in 0.020729 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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