PHP脚本中的chdir调用shell脚本的问题



我正在尝试使用PHP脚本调用shell脚本并将输出打印到浏览器。

我已经确认所有权限设置都设置正确,PHP和bash脚本都有完全的控制权。

如果我在当前目录(与PHP文件相同的目录)中运行shell脚本,则它可以正常工作。但是如果我尝试从/some/other/目录/shell运行shell脚本。脚本,那么它不工作。为什么会这样呢?

我试过chdir()到另一个目录,但在运行getcwd()之后,它从未改变目录。

我也尝试了exec命令本身,它不工作。

<?php error_reporting(E_ALL); ini_set('display_errors',1);
echo "<h1>EDS Count Report</h1><p>";
$output=shell_exec('cd /app/script/catalog/ && ./EDScount_report.sh');
echo $output;
?>

SHELL脚本内容:

#!/bin/bash echo "this is a test!"

请试试

<?php
$output=shell_exec('sh /path/to/otherdirectory/shellscript.sh');
echo $output;
?>

如果您确定您可以访问该目录,您还可以使用:

<?php
    $output=shell_exec('cd /path/to/otherdirectory/ && ./shellscript.sh');
    echo $output;
    ?>

最新更新