在PHP中,我使用proc_open()通过stdin传递sed()请求。
然而
sed -i -e 's/USE `.*`;//'
结果:
sed:-i不能与stdin一起使用
当我在shell中运行相同的命令时,它可以正常工作。
任何接受者?找不到任何答案。
请注意,使用 sed -i 的原因是因为相关文件很大(1 GB)。
答案 0 :(得分:3)
-i标志表示sed打开文件,修改它们,然后保存它们。
由于无法保存stdin,因此使用标准输入时无法使用-i标志。
使它做一些有意义的事情,要么在命令行上提供文件(这将修改文件)或删除-i标志,修改后的输入将打印到stdout。