php exec()某个shell结果出错

来源:互联网 发布:数据远传系统 编辑:程序博客网 时间:2024/05/22 15:38
原因是php中的 grep只能处理文本流,二进制流不行.

 cat aa.txt | grep   'startup' |wc-l
在linux命令行下测试没有问题。但是在php的exec的就出现问题了,很奇怪。
结果报错:
报错提示如下:cat: write error: Broken pipe

废了好大劲,终于解决。
grep的选项增加-a选项就ok了

grep -a选项的意思是:Process a binary file as if it were text; this is equivalent to the --binary-files=text option

应该是cat的这个文件内容有二进制流,导致grep不识别 
原创粉丝点击