在shell_exec
中使用php
时
$make=shell_exec('ls');
echo $make;
它会在我们的网页中返回结果,但是当我们使用hadoop fs -ls
而不是ls时,它不返回任何内容,shell_exec与hadoop shell命令一起使用
或者有没有其他方法来做同样的事情我也尝试使用python脚本中的命令,然后使用php's shell_exec
执行这些脚本,但仍然没有好
答案 0 :(得分:1)
可能会发生handoop可执行文件不在当前工作目录或上下文的路径中。
尝试使用完整路径执行命令。
例如:
而不是使用像shell_exec('hadoop fs -ls');
这样的命令
使用 shell_exec('/usr/bin/hadoop fs -ls');
我不知道你的系统上handoop可执行文件的确切位置。使用mlocate实用程序来查找确切的文件位置。