web页面,php exec执行的命令与在linux命令行下执行获得的结果不一致
通过php exec执行shell脚本,但与在linux命令行下执行,获得的结果不一样。脚本内容如下:
/bin/netstat -an | grep ESTABLISHED | awk '{print $4}' | cut -d: -f1 | sort | uniq -c
在命令行下获取的结果:
2 192.168.0.135
而使用php 的exec脚本执行,通过web页面来执行,获取的结果:
1
2 192.168.0.135
这个 1 不清楚是怎么来的。哪位大神帮忙看下,问题出在哪里了!php脚本如下
<?php
exec ("/bin/netstat -an | grep ESTABLISHED | awk '{print $5}' | cut -d: -f1 | sort | uniq -c", $re);
foreach ($re as $re1)
{
echo $re1."<br>";
}
echo "Over<br>" ;
?>
------解决方案--------------------估计是nginx->php的连接引起的吧, 你可以让Php只调一下/bin/netstat -an
------解决方案-------------------- grep ESTABLISHED看看output是什么。