批量查找和操作显示部分重复的文件



我有一个问题。是否有可能在批处理语言中搜索和显示文件名中前五个字母相同的文件…这个文件夹包含数千个文件。例如

22222rewrs344234w.mp3
22222asdqweavasd.mp3
234seqwe.mp3
32434.mp3
qwedasdasdasd.mp3
qwedasasdasd.mp3
11122asdas.mp3
11122asdasd.mp3
...
...
...

我需要在cmd中只显示文件名

22222rewrs344234w.mp3
22222asdqweavasd.mp3
11122asdas.mp3
11122asdasd.mp3
qwedasdasdasd.mp3
qwedasasdasd.mp3

因为前五个字母是一样的。如果文件夹不包含5个字符的副本,则打印一个消息文件夹有人能帮我解决这个问题吗?

@echo off
setlocal EnableDelayedExpansion
rem Group files with same 5 chars prefix in name
for %%a in (*.*) do (
   set "file=%%a"
   for /F %%f in ("!file:~0,5!") do set "group[%%f]=!group[%%f]! %%a"
)
rem Show groups that have more than one name
for /F "tokens=2*" %%a in ('set group[') do (
   if "%%b" neq "" echo Same prefix: %%a %%b
)

相关内容

最新更新