Sei*_*iti 3 command-line-interface batch background-process
我想运行一个批处理脚本:
我是这样写的:
start java -jar "path\selenium-server.jar"
ping -n 5 127.0.0.1 >NUL
"path\Gallio.Echo.exe" "path\MyAssembly.dll"
REM now, how do I stop the background process?
Run Code Online (Sandbox Code Playgroud)
你说“DOS”,但我想你的意思是 Windows CMD shell。(毕竟,MS-DOS 不是多任务操作系统。)
好的,好的 - 这是我刚刚完成的一个黑客。即使提出这个建议,我也觉得有点脏。
SET TASK=%RANDOM%-SELENIUM-SERVER-%RANDOM%
start "%TASK%" java -jar "path\selenium-server.jar"
ping -n 5 127.0.0.1 >NUL"
path\Gallio.Echo.exe" "path\MyAssembly.dll"
taskkill /FI "WINDOWTITLE eq %TASK%"
Run Code Online (Sandbox Code Playgroud)
假设“java”命令与窗口标题无关,那么“START”命令会将窗口标题设置为“随机数”-SELENIUM-SERVER-“随机数”,然后TASKKILL将杀死任何带有那个标题。
呃……这让我觉得很脏。
如果“java”确实弄乱了窗口标题,您还可以这样做:
SET TASK=%RANDOM%-SELENIUM-SERVER-%RANDOM%
start "%TASK%" cmd /k start java -jar "path\selenium-server.jar"
ping -n 5 127.0.0.1 >NUL"
path\Gallio.Echo.exe" "path\MyAssembly.dll"
taskkill /T /FI "WINDOWTITLE eq %TASK%"
Run Code Online (Sandbox Code Playgroud)
这真的让我觉得很脏。这将创建一个带有随机标题的 CMD 窗口,然后在单独的窗口中启动“java”。TASKKILL 上的“/T”将杀死“FOO”窗口——即“java”窗口的所有子进程。
我觉得恶心。>微笑<