运行命令时如何防止batch file(.bat)closuresterminal?

Windows 7机器上,如果我在terminal中手动运行一个像这样的PHPUnit Selenium命令:

phpunit --verbose --log-junit _selenium_tests\results\home.xml _selenium_tests\frontend\home.php 

它产生了一个浏览器,并运行testing就好了。 然后在屏幕上输出以下内容:

 Time: 10 seconds, Memory: 3.50Mb OK (1 test, 3 assertions) 

terminal保持打开。

现在,如果我复制并粘贴在一个空的文件中的确切的命令,并保存为test.bat并点击它,它也运行testing。 我可以看到浏览器打开,所有的testing运行。 唯一的问题就是closuresterminal提示符之后。 所以我看不到上面的输出。

一个更大的问题是,因为它closures了terminal,如果我添加了更多的命令后,其他testing之后,他们不运行。

我试着添加:

 pause 

在蝙蝠文件结束但没有运气,它仍然closures。 任何想法如何防止这一点,并能够运行一个接一个的命令而没有terminalclosures?

Solutions Collecting From Web of "运行命令时如何防止batch file(.bat)closuresterminal?"

你的问题与这个相似。 尝试在您的命令前使用call 。 如果从另一个.bat文件运行.bat文件而不使用call ,则控件不会返回到第一个批处理文件,因此pause不会被执行。

  • 试试cmd /K phpunit --verbose --log-junit _selenium_tests\results\home.xml _selenium_tests\frontend\home.php

    cmd /K string/K选项执行字符串指定的命令,但保留
    请参阅http://www.computerhope.com/cmd.htm

  • 此外,我不知道你执行的phpunit命令的文件类型 – 我不熟悉硒。 如果是批处理文件(即以.bat结尾),则不能从另一个批处理文件中调用它们:调用第二个批处理文件之下的所有内容都不会执行。

    然后您需要使用CALL命令。 CALL 使用户能够从另一个批处理文件中执行批处理文件
    请参阅http://www.computerhope.com/call.htm