我有两台电脑。在第一台计算机上,我用所有的Web代码运行Apache。在第二台计算机上,我有大量数据与检索脚本一起存储(脚本通常需要几小时才能运行)。我本质上是创建一个Web UI来访问这些数据,而不会有任何时间延迟。在php中运行bash脚本
所以我呼吁:
exec("bash initial.bash");
这是一个驱动程序的脚本是在我的Apache的文件夹。它在另一台计算机上调用脚本。 电话: ssh otherMachine temp.bash&
此脚本调用第二台计算机上的数据检索脚本。
如果我在终端中调用initial.bash,一切运行顺利并成功,但如果我在我的PHP文件中调用它,那么我的所有命令都在initial.bash中运行,但ssh otherMachine temp.bash&
例外。我把&放在最后,所以temp.bash会在后台运行,因为它需要几个小时才能完成。
我不确定为什么在Apache调用嵌套脚本时没有运行。有没有比使用exec或shell_exec来调用最终调用另一个脚本的脚本更好的选择。我不直接在第二台机器上调用脚本的原因是因为程序运行的时间。在脚本完成之前,Shell_exec不会呈现php页面。
+1所有伟大的建议。 – 2010-03-29 18:51:14