我正在尝试使用PHP来执行python脚本,但是当php执行时,python似乎不起作用。
我尝试使用此代码进行测试
$cmdResult = shell_exec("ls & /usr/local/bin/python2.7 --version & echo done");
返回:
done
LICENSE
example.py
当我在控制台(shell)上执行时:
[root@local folder]# /usr/local/bin/python2.7 --version
Python 2.7.6
任何人都知道这个问题是什么?
有条件的信息:
[root@local folder]# ls -all /usr/local/bin/py*
-rwxr-xr-x 1 root apache 84 Jul 21 21:53 /usr/local/bin/pydoc
lrwxrwxrwx 1 root root 24 Jul 21 21:43 /usr/local/bin/python -> /usr/local/bin/python2.7
-rwxrwxrwx 1 root apache 4669791 Jul 21 21:53 /usr/local/bin/python2.7
-rwxr-xr-x 1 root apache 1674 Jul 21 21:53 /usr/local/bin/python2.7-config
答案 0 :(得分:1)
在shell命令中尝试使用&&
,如下所示:
ls && /usr/local/bin/python2.7 --version && echo done
所以你的代码会读到
$cmdResult = shell_exec("ls && /usr/local/bin/python2.7 --version && echo done");