在Ubuntu上运行的PHP中,我可以运行exec('npm -v')
,并且输出很好,
但我无法运行exec('gitbook xxxx')
。
gitbook是我通过
安装的npm软件包npm install gitbook -g
我可以在Ubuntu终端中运行gitbook xxxx
,如何从我的PHP代码中运行它?
答案 0 :(得分:0)
我曾经在基于UNIX的操作系统上这样尝试过一次:
您可以通过exec()
函数运行shell命令:
//制作一个php文件来执行shell脚本
exec("node yourscript.js &", $output);
好的输出在这里成为每行输出以及进程ID的数组。您也可以通过processid杀死进程。
exec("kill " . $processid);
这是我的工作方式。除此之外,您可以使用节点管理器。希望对您有帮助。还可以尝试使用node命令。
答案 1 :(得分:0)
如果您是通过nginx或apache运行php(例如,访问url example.com/index.php),则有时需要导出 PATH
exec("export PATH=/usr/local/bin && gitbook build);
添加导出路径后,一切正常。