PHP shell_exec命令不起作用

时间:2016-07-18 16:11:29

标签: php linux bash lamp

我正在尝试学习从PHP代码中执行shell脚本。所以,我做了一个测试程序来从PHP中执行一个bash脚本。但是,它没有任何效果。相关代码如下所示。

<?php 
.......
shell_exec('/bin/bash /var/www/html/just_touch.sh');
?> 

just_touch.sh脚本只会创建一个新文件,如下所示。

touch /home/user/some.txt

我希望在执行后有文件/home/user/some.txt,但不,它不会被制作。我在做什么错误?

P.S:以下代码有效。

$output = shell_exec('ls /home/user');
echo $output;

这与权限有关吗?

此外,我注意到,虽然这打印了#34;你能看到我吗?&#34;。

$output = shell_exec('echo Can you see me?');
echo $output;

这不是!

shell_exec('echo Can you see me?')

这里发生了什么?

1 个答案:

答案 0 :(得分:1)

使用shell_exec时,

Stderr 会丢失。你可能不会使用:

shell_exec('/bin/bash /var/www/html/just_touch.sh 2>&1');