繁体   English   中英

奇怪的Windows 10批处理兼容性问题

[英]Weird Windows 10 batch compatability issue

我刚刚升级了Windows10。但是编写的批处理文件无法完全正常工作。 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。

Windows 10和Windows 7在列出DIR时会给出不同的列。 更改令牌将解决问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM