批处理文件:如果从 Windows 启动,则保持命令窗口打开,否则不打开

批处理文件:如果从 Windows 启动,则保持命令窗口打开,否则不打开

如果我从 Windows 运行批处理文件(开始->运行,“mybatch.bat”),则会弹出一个窗口,执行后关闭。我希望它能继续使用。

但是,如果从现有终端运行同一个批处理文件,我希望它使用当前终端,而不是打开另一个终端。

这可能吗?

答案1

这应该是正常现象。此批次:

:: Q:\Test\2017\07\19\WhoStartedMe.cmd
@Echo off
Echo %cmdcmdline%
pause

显示使用哪个 cmd 行启动批处理并等待任何键
启动 win Win+R

C:\WINDOWS\system32\cmd.exe /c ""Q:\Test\2017\07\19\WhoStartedMe.cmd" "
Press any key to continue . . .

从打开的 cmd 窗口启动:

> WhoStartedMe.cmd
"C:\WINDOWS\system32\cmd.exe"
Press any key to continue . . .

从打开的 Powershell 窗口启动:

PS> .\WhoStartedMe.cmd
C:\WINDOWS\system32\cmd.exe /c ""Q:\Test\2017\07\19\WhoStartedMe.cmd""
Press any key to continue . . .

相关内容