CMD:回显到一个新的 .bat 不工作?
CMD: Echo'ing into a new .bat not working?
我有一个 .cmd 文件,它创建一个 .bat 文件,调用时,通过 ping
提供 500 毫秒的延迟。我的代码是:
@echo off && SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
("
echo @echo off
echo ping 1.1.1.1 -n 1 -w 500
echo exit /b
")>C:\...\timeout.bat
pause>NUL
ENDLOCAL
然而,进入timeout.bat的唯一输出是
@echo off
exit /b
有人知道为什么它不能识别 ping
命令吗?我的语法不正确吗?
如果您将脚本更改为此,会发生什么情况,这并不是为了改变您的初衷?
@Echo Off
(Echo=@Echo Off
Echo=Ping -n 1 127.0.0.1 -w 500
Echo=Exit/B)>"C:\NotSecretDir\time_out.bat"
Timeout -1 1>Nul
我建议调用一个批处理文件,然后调用 ping 命令和 returns 到原始进程将有效地花费比预期的半秒更长的时间。出于这个原因,我建议您不要打扰,只需使用 @Timeout 1 1>Nul
.
您的批处理文件不会向 timeout.bat 写入任何行,因为您的语法错误。
("
将产生错误,您的批处理的其余部分将不会执行。
我有一个 .cmd 文件,它创建一个 .bat 文件,调用时,通过 ping
提供 500 毫秒的延迟。我的代码是:
@echo off && SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
("
echo @echo off
echo ping 1.1.1.1 -n 1 -w 500
echo exit /b
")>C:\...\timeout.bat
pause>NUL
ENDLOCAL
然而,进入timeout.bat的唯一输出是
@echo off
exit /b
有人知道为什么它不能识别 ping
命令吗?我的语法不正确吗?
如果您将脚本更改为此,会发生什么情况,这并不是为了改变您的初衷?
@Echo Off
(Echo=@Echo Off
Echo=Ping -n 1 127.0.0.1 -w 500
Echo=Exit/B)>"C:\NotSecretDir\time_out.bat"
Timeout -1 1>Nul
我建议调用一个批处理文件,然后调用 ping 命令和 returns 到原始进程将有效地花费比预期的半秒更长的时间。出于这个原因,我建议您不要打扰,只需使用 @Timeout 1 1>Nul
.
您的批处理文件不会向 timeout.bat 写入任何行,因为您的语法错误。
("
将产生错误,您的批处理的其余部分将不会执行。