Windows 11中CMD脚本内TIMEOUT命令首次调用失效问题求助
Windows 11 CMD脚本中TIMEOUT命令首次调用立即退出的问题
我曾在微软答案社区提交此问题,但被告知他们不处理这类问题,我怀疑这是cmd.exe或相关组件的bug。
Windows 11中,TIMEOUT命令在我的CMD脚本里出现故障,无法按指定时间等待。例如执行TIMEOUT /T 8时,会显示倒计时起始秒数但立即退出。
经过调试发现:手动在CMD.EXE窗口提示符输入该命令时一切正常;但在CMD脚本中,第一次调用TIMEOUT会失效,后续调用则能正常工作。我目前的规避方法是在脚本开头添加TIMEOUT /T 1,确保后续TIMEOUT命令正常运行。
可复现问题的批处理文件(test.CMD)
echo on timeout.exe /T 8 echo. echo now invoking with full path ... %SystemRoot%\System32\timeout.exe /T 8 echo. echo now invoking choice ... choice /T 8 /C Y /D Y /M "Press Y to continue (or wait for timeout)" echo. echo do a PAUSE so you can see the results on the screen before batch file finishes running PAUSE
双击运行该脚本时,第一次调用timeout失效,第二次正常。无论是否指定完整路径或调整调用顺序,结果一致。
执行环境的相关命令输出
set path Path=C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Users\lorde\AppData\Local\Microsoft\WindowsApps; PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC %SystemRoot%\System32\reg.exe query HKCU\Environment /v Path HKEY_CURRENT_USER\Environment Path REG_EXPAND_SZ %USERPROFILE%\AppData\Local\Microsoft\WindowsApps; %SystemRoot%\System32\where.exe timeout C:\Windows\System32\timeout.exe %SystemRoot%\System32\reg.exe query "HKCU\Software\Microsoft\Command Processor" /v Autorun ERROR: The system was unable to find the specified registry key or value. %SystemRoot%\System32\reg.exe query "HKLM\Software\Microsoft\Command Processor" /v Autorun ERROR: The system was unable to find the specified registry key or value.
请问是否有其他人遇到过此问题?除了当前的规避方法,还有没有其他解决方案?
内容的提问来源于stack exchange,提问作者Ludwig
相关产品推荐
相关产品推荐

