这很难解释,所以我会尽我所能。
当我在Batch中使用start
命令时,它会创建一个新窗口等。
我正在尝试创建自己的控制台批处理脚本,这不像cmd.exe那样烦人。
问题是在当前窗口中运行help
,echo
等命令。
我目前的代码是
:console
set COMMAND=n
set /p COMMAND=%~dp0console.exe^> %=%
if %COMMAND%==exit exit
start %COMMAND%
rem Wait 1000
goto console
我正在使用Batch to EXE Converter,因此rem Wait 1000
有效。
该脚本的一个大问题是,如果用户键入help
或echo
以及任何其他命令,您可以在cmd.exe中正常运行,它将打开一个新的cmd.exe窗口,运行脚本。我不希望这种情况发生,有没有办法解决问题?
我尝试过的事情:
start %COMMAND%
,而是使用了%COMMAND%
。这个
导致错误。(如果建议不起作用,将在此列表中添加)
答案 0 :(得分:1)
有两种选择:
call %command%
这将等到命令结束
start /b %command%
将在当前窗口中启动命令