中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-04 20:47
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]查找并删除相似的文件,希望各位可以帮帮我。 查看 1,013 回复 2
楼 主 [求助]查找并删除相似的文件,希望各位可以帮帮我。 发表于 2007-06-10 16:01 ·  中国 江苏 连云港 联通
高级用户
★★★
前进者
积分 641
发帖 303
注册 2007-01-10 02:57
19年会员
UID 76009
性别 男
状态 离线
我朋友要删除相似的文件名的文件,因为歌曲文件比较多,所以难免有重复的歌曲,比如有这样的歌曲,一首叫“刘德华-忘情水.mp3"还有一首叫“忘情水.mp3"其实是下重复了,现在这样的歌曲很多。我想了一会想不出批处理怎么做,个人感觉关键的难点就是还有许多类似的其它歌曲跟这两首没有关系,或许还有许多叫"刘若英-后来.mp3"跟"后来.mp3"的,想不出有什么方法可以过滤出这样的相似的歌曲,各位朋友们,有好的思路的帮我一下,也好让我可以学习一下,谢谢各位路过的朋友,更感谢帮忙的朋友。
我相信总有一天,总会遇到一个人可以相濡以沫、相吻以湿!
2 发表于 2007-06-10 16:11 ·  中国 广东 广州 黄埔区 电信
中级用户
★★
积分 326
发帖 152
注册 2007-05-04 06:16
19年会员
UID 87412
性别 男
状态 离线
@ECHO OFF
title 删除大小和类型一样的文件
SETLOCAL ENABLEDELAYEDEXPANSION
for /f "tokens=*" %%a in ('dir/a-d/b/oe') do set/a c+=1&set a!c!=%%a&set b!c!=%%~za&set c!c!=%%~xa
for /l %%a in (1,1,%c%) do set/a d=%%a+1&for /l %%b in (!d!,1,%c%) do if not !b%%a!.==. call :1 %%a %%b
goto :eof
:1
if !b%1!==!b%2! if !c%1!==!c%2! set b%2=&del "!a%2!"
goto :eof
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
oilio +2 2007-06-10 17:41
3 发表于 2007-06-10 18:56 ·  中国 浙江 杭州 联通
银牌会员
★★★
积分 1,928
发帖 931
注册 2007-01-06 11:46
19年会员
UID 75624
性别 男
状态 离线
@echo off
for /f "delims=" %%i in ('dir /a-d /b /oe') do (
for /f "delims=" %%a in ('dir /a-d /b /oe ^|find /c "%%~ni"') do (
if %%a geq 2 del /q %%i
)
)
pause
论坛跳转: