从PHP运行Bash命令

我有一个bash脚本,可以通过命令行像这样运行:

./script.sh var1 var2

我在调用某个php文件后尝试执行上述命令。

我现在所拥有的是:

$output = shell_exec("./script.sh var1 var2");

echo "<pre>$output</pre>";

但这是行不通的。我尝试过使用execsystem太,但剧本从来没有得到执行。

但是,当我尝试运行shell_exec("ls");它时,它确实起作用,并且$output是所有文件的列表。

我不确定这是由于我使用的VPS的限制还是问题出在其他地方?

回答:

您可能需要在调用脚本之前将chdir更改到正确的目录。这样,您可以在调用shell命令之前确保脚本位于哪个目录中。

$old_path = getcwd();

chdir('/my/path/');

$output = shell_exec('./script.sh var1 var2');

chdir($old_path);

以上是 从PHP运行Bash命令 的全部内容, 来源链接: utcz.com/qa/412359.html

回到顶部