@echo off
set mp3=%cd%\音乐文件.txt
set 搜索目录=d:\Program Files\Download\OK1
:main
for /f "delims=" %%i in ('dir /b %搜索目录%') do (
find /i "%%~ni" %mp3%>nul||(echo 未发现 %%i 准备将其删除
del "%搜索目录%\%%i"
)
)
goto :main
pause
看下唉是否可以达到你的目的
帮你写一个先测试,批处理文件可放任意位置执行,里面的路径名称等核对一下,就是看到按任意键继续时,它还只执行了一次,并且只显示要删哪些文件,看看是否正确,没问题用鼠标关闭此窗口,重新编辑把有一行开始的 rem 去掉,再把有一行pause去掉就是循环执行删除了,间隔时间可调那个10000
@echo off
:a
set sd=d:\Program Files\Download
set sf=d:\Program Files\Download\音乐文件.txt
for /f "delims=" %%i in (
'dir/b/s/a-d "%sd%\ok1" "%sd%\ok2"^|findstr/ivg:"%sf%"')do (
echo %%i
rem del "%%i"
)
pause
ping -n 1 -w 10000 9 >nul
goto a