Странная проблема совместимости с Windows 10

Я только что обновил 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.

1 ответ

Решение

Windows 10 и Windows 7 дают разные столбцы при DIR листинге. Смена токенов решит проблему.

Другие вопросы по тегам