【发布时间】:2014-11-29 21:19:04
【问题描述】:
这是我的 push.bat 文件
echo "Hello world!"
cd abhishek3/
call git add .
call git commit -m "sadf"
call heroku accounts:set abhishek84
call git push heroku master
我可以通过在 cmd 中运行 push.bat 文件来推送到我的存储库
我想从 php 推送到我的仓库,尝试了 sn-ps 但它们都不适合我。
exec("psexec -d push.bat");
结果: PHP 页面无限加载
$WshShell = new COM("WScript.Shell");
$oExec = $WshShell->Run("cmd /C abhishek3.bat, 0, false);
结果:页面在一段时间后停止加载,没有任何效果
exec("cmd.exe /c abhishek3.bat")
结果:页面在一段时间后停止加载,没有任何效果
编辑: 尝试了以下 sn-p 但没有任何效果。
exec("hstart.exe /NOCONSOLE \"cmd.exe /c \"abhishek3.bat\"\"");
上面的 sn-p 在从 cmd 运行时运行成功,但从 php 通过 exec() 运行时不起作用。 Download hstart (Hidden Start Binary)
【问题讨论】:
-
正如您所说的“页面加载”,我假设您正在通过 Web 服务器进行测试?你尝试过 php cli 吗?可能网络服务器正在与您的用户的其他权限一起运行并停止它?
-
我正在从 localhost 运行网络服务器。当我运行 php -r "$ret = exec('abhishek3.bat'); echo $ret;"从 cmd 它成功执行批处理文件。如果我从网页运行它,它不会执行推送..
标签: php windows git batch-file git-push