批处理for循环中调用FFmpeg后ANSI转义颜色失效问题求助
批处理for循环中调用FFmpeg后ANSI转义颜色失效问题求助
我正在尝试用ANSI转义码给一个批量处理视频文件的批处理脚本添加文本颜色效果。
现在遇到一个头疼的问题:脚本里第29行的FFmpeg命令执行后,后续的颜色输出就完全失效了。如果把这行FFmpeg代码注释掉,所有颜色显示都正常工作。有没有大佬能帮我看看问题出在哪?
以下是我的完整脚本代码:
@echo off REM Change the console encoding to UTF-8 (for Nordic characters). chcp 65001 set filelist=%1 setlocal enabledelayedexpansion REM Define ESC escape character for /f %%d in ('echo prompt $E ^| cmd') do (set "ESC=%%d") for /f "usebackq tokens=*" %%a in ("%filelist%") do ( set Bytes=%%~za set MB=!Bytes:~0,-6! set Timestamp=%%~ta set TSYYYY=!Timestamp:~6,4! set TSYY=!Timestamp:~8,2! set TSMM=!Timestamp:~3,2! set TSDD=!Timestamp:~0,2! set TSHR=!Timestamp:~11,2! set TSMIN=!Timestamp:~14,2! set TSDato=!TSYY!!TSMM!!TSDD! set TSTid=!TSHR!!TSMIN! echo !ESC
