执行shell命令并获得实时输出

时间:2018-07-23 14:53:05

标签: php linux ubuntu

我正在尝试从PHP执行以下命令,问题是我尝试了“ PING”,“ netstat -a”和“ ls”,它们都工作正常并且得到了输出。

Wpscan是一个Wordpress错误扫描程序,它是用ruby编写的,我将其安装在服务器中,并使用此命令使其可从任何地方执行 sudo ln -s /home/ubuntu/wpscan/wpscan.rb /usr/local/bin/wpscan

如您所见,我在shell上尝试了相同的命令,它运行正常。我不知道PHP代码有什么问题。 wpscan command

$cmd = 'wpscan -u www.google.com';


while (@ ob_end_flush()); // end all output buffers if any

$proc = popen($cmd, 'r');
echo '<pre>';
while (!feof($proc))
{
    echo fread($proc, 4096);
    @ flush();
}
echo '</pre>';

?>

更新我只是在命令末尾添加了以下“ 2>&1”,但出现了以下错误: /home/ubuntu/wpscan/lib/common/common_helper.rb:6:in home': couldn't find HOME environment -- expanding〜'(ArgumentError)     来自/home/ubuntu/wpscan/lib/common/common_helper.rb:6:in ' from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in中的'     来自/usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in require' from /home/ubuntu/wpscan/lib/wpscan/wpscan_helper.rb:3:in'     来自/usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:require' from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in中需要

来自/ usr / local / bin / wpscan:8:in`

Update2: 我刚刚检查了PHP脚本和shell的用户。 PHP :www-data Shell :Ubuntu

0 个答案:

没有答案