我刚刚升级了 Windows 10。但是我写的批处理文件不能完全工作。相同的编码适用于 Windows 7。这就是一段代码。
:BASLA
SETLOCAL ENABLEDELAYEDEXPANSION
set "s=DIR D:\Diziler /S /Q ^|FIND /i "Administrators" ^|findstr /m /i "HDTV" ^|findstr /m /i "\.mkv$""
for /f "Tokens=5,6*" %%f in ('%s%') do (
set FULLNAME=%%f
set ENDTEXT=!FULLNAME:*0p=!
call set TRIMMEDNAME=%%FULLNAME:!ENDTEXT!=%%
for /r D:\Diziler\ %%g in (*) do echo %%~nxg >> %tmp%\altyazi.txt
>nul findstr /c:"!FULLNAME:~0,-4!.srt" %tmp%\altyazi.txt && (
>>%tmp%\list.txt echo !TRIMMEDNAME!*
) || (
>>%tmp%\list.txt echo !TRIMMEDNAME!
)
)
)
第一部分照常工作。altyazi.txt 给出了正确的输出。但是当出现 list.txt 时,所有的输出都是 Echo 关闭。我从来没有见过这样的事情。适用于 7,但不适用于 10。