检查文件夹以查看是否已录制新歌曲

时间:2019-04-23 00:17:54

标签: batch-file

名为WORLD的主要音乐文件夹中有歌曲列表。我得到要添加到WORLD文件夹的NEW_MUSIC列表。有时,新歌的标题中会加上额外的字符,例如__1或_1等,因此,我希望能够将每个NEWMUSIC歌曲的一部分作为变量输入,并检查是否已经输入了带有不同标题的歌曲。我需要查看WORLD文件夹中所有歌曲的列表,并从查看NEWMUSIC文件夹名称输入的变量开始。下面是使用的两个文件的示例。我已经玩过一些BAT文件,但是我一直试图获取类似歌曲的列表。

NEWMUSIC文件夹

Name                                Ext

ROOTS.RAGGA_1                       mp3
SAGINOU_1                           mp3
SAMBA.TI,.SAMBA.EU                  mp3

WORLD文件夹

Name                                Ext

ROOTS.RAGGA                         mp3
SAGINOU_1                           mp3
SALPICA                             mp3

工作文件夹中有3首歌曲中的2首。 1个具有相同的拼写,1个具有额外的字符_1

1 个答案:

答案 0 :(得分:0)

这是我的处理方式:

在测试环境中,我有两个文件夹-NEWMUSICWORLD
其内容如下:

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部分根据需要更改此设置。

这很可能不是一个完美的解决方案,但是很容易进行调整以适应。