请查看我的批处理文件。
echo off
start "c:\program files\php\php.exe D:\mydocs\mp\index.php param1 param2"
但它不起作用。任何想法我如何让它工作?
答案 0 :(得分:35)
这应该有效:
start "" "c:\program files\php\php.exe" D:\mydocs\mp\index.php param1 param2
start
命令将第一个参数解释为窗口标题(如果它包含空格)。在这种情况下,这意味着start
将您的整个参数视为标题并且不会看到命令。将""
(空标题)作为start
的第一个参数传递可以解决问题。
答案 1 :(得分:9)
如果您需要查看执行的输出,请与CALL
一起使用START
或代替CALL "C:\Program Files\Certain Directory\file.exe" -param
PAUSE
。
示例:
PAUSE
这将运行file.exe并在同一命令窗口中打印回输出的内容。请记住通话后的{{1}},否则窗口可能会立即关闭。
答案 2 :(得分:0)
除非它只是问题的简化示例,否则我的建议是删除批处理包装并直接安排PHP,更具体地说是php-win.exe
程序,它不会打开不必要的窗口。
Program: c:\program files\php\php-win.exe
Arguments: D:\mydocs\mp\index.php param1 param2
否则,只需引用安德鲁指出的东西。
在旧版本的Windows中,您应该能够将所有内容放在单个“运行”文本框中(只要您引用包含空格的所有内容):
"c:\program files\php\php-win.exe" D:\mydocs\mp\index.php param1 param2