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