Вот как бы я подошел к этому:
В моей тестовой среде у меня есть две папки - NEWMUSIC
И WORLD
.
Их содержание следующее:
NEWMUSIC -
Roots.Ragga_1.txt
Saginou_1.txt
Samba.TI.txt
WORLD -
Roots.Ragga.txt
Saginou_1.txt
Salpica.txt
Это код, который я использовал для моей конкретной ситуации:
for /f "delims=_" %%i in ('dir newmusic /b') do echo %%i & dir world /b | find /i /c "%%~ni"
Возвращает:
Roots.Ragga
1
Saginou
1
Samba.TI.txt
0
Как это работает:
Он перебирает файлы в NEWMUSIC, ищет их (только имя файла) в WORLD и возвращает совпадения. Как вы можете видеть по выводу, он обрезает что-либо в имени файла после '_'. Вы можете изменить это, как считаете нужным, через часть "delims=_"
команды FOR
.
Это, скорее всего, не будет идеальным решением, однако его легко настроить в соответствии с требованиями.