我刚刚升级了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.
答案 0 :(得分:0)
当DIR列出时,Windows 10和Windows 7会提供不同的列。更改令牌可以解决问题。