如何将exec结果设置为数组?

时间:2015-05-14 18:30:15

标签: php arrays bash

如何将exec结果保存到数组或列表中,并使用PHP显示结果?

exec('./Script.sh');

此脚本包含IP列表。

脚本的内容如下:

echo nmap -sP 192.168.2.0/24 | cut -d "i" -f1 | cut -d " " -f2 | grep 192.168.2.*

谢谢!

2 个答案:

答案 0 :(得分:2)

$result = [];
exec('./Script.sh', $result);
var_dump($result);

答案 1 :(得分:0)

您可以尝试使用shell_exec()代替exec()

echo shell_exec('./Script.sh');

这将输出shell_exec()的结果作为字符串,如果你真的需要一个数组,你可以在换行符上使用explode()

$output = shell_exec('./Script.sh');
$outputArray = explode(PHP_EOL, $output);

shell_exec

  

通过shell执行命令并将完整输出作为字符串

返回