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

[文本处理] 【已解决】请教批处理带参数的文本文档一键去重问题

[复制链接]
发表于 2022-3-4 15:11:26 | 显示全部楼层 |阅读模式
本帖最后由 zhuan1688 于 2022-3-5 09:53 编辑

批处理之家帮我个人解决了很多的问题,在此向管理员和各位无私奉献的大神表示感谢!
新问题是,TXT文件里有一万行内容,每行的格式都是:网址/?id=数字,但是网址有大量重复的,这种带参数的怎么一键去重?
如:
http://www.1.com/?id=2
http://www.2.com/?id=9
http://www.3.com/?id=21
http://www.1.com/?id=28
http://www.4.com/?id=8
把 http://www.1.com/ 去重只保留一个
不知道能不能实现,请各位大神赐教,无比感激
发表于 2022-3-4 18:36:22 | 显示全部楼层
test.bat
  1. @echo off & cd /d "%~dp0"
  2. set "file=1.txt"
  3. (
  4.         for /f "usebackq tokens=1-4 delims=./" %%i in ("%file%") do (
  5.                 if not defined _%%k (
  6.                         echo %%i//%%j.%%k.%%l/
  7.                         set "_%%k=1"
  8.                 )
  9.         )
  10. )>"%file%_NEW"
  11. move /y "%file%_NEW" "%file%"
  12. pause&exit
复制代码
 楼主| 发表于 2022-3-4 21:28:22 | 显示全部楼层
回复 2# went

感谢老师的指教,我是想保留参数,比如
http://www.1.com/?id=2
http://www.2.com/?id=9
http://www.3.com/?id=21
http://www.1.com/?id=28
http://www.4.com/?id=8
去重后是
http://www.1.com/?id=2
http://www.2.com/?id=9
http://www.3.com/?id=21
http://www.4.com/?id=8
而且网址格式很乱,有的带www,有的不带,有的是com有的是com.cn,有的是四级域名等等,不知道这样的能不能实现
发表于 2022-3-4 22:21:11 | 显示全部楼层
回复 3# zhuan1688


    这样吗?
  1. @echo off & cd /d "%~dp0"
  2. set "file=1.txt"
  3. (
  4.         for /f "usebackq delims=" %%i in ("%file%") do (
  5.                 if not defined %%~pi (
  6.                         echo %%i
  7.                         set "%%~pi=1"
  8.                 )
  9.         )
  10. )>"%file%_NEW"
  11. move /y "%file%_NEW" "%file%"
  12. pause&exit
复制代码

评分

参与人数 1技术 +1 收起 理由
zhuan1688 + 1 感谢分享

查看全部评分

 楼主| 发表于 2022-3-5 09:53:19 | 显示全部楼层
回复 4# went


    感谢老师帮助,完美解决,祝您万事如意,结贴
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-20 07:19 , Processed in 0.028249 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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