Jav*_*Jav 1 grep redirection stderr pipe stdout
我的程序输出到stderr和stdout。我想在stderr和 中搜索“模式” stdout。我希望将其余部分发送到/dev/null.
如果我在重定向后使用管道stderr:./prog 2>/dev/null | grep "pattern"
我没有得到stderr包含“模式”的行。
如果我在重定向之前使用管道stderr:./prog | grep "pattern" 2>/dev/null
没有一个stderr被重定向到/dev/null
感谢您的帮助。
小智 7
如果您不关心字符串匹配是来自 stdout 还是 stderr,则只需通过将 stderr 重定向到 stdout 来合并两个流,然后执行 grep:
$ your_program 2>&1 | grep "pattern"
Run Code Online (Sandbox Code Playgroud)
该示例适用于 sh、bash、ksh、zsh。csh 应该是:
$ your_program |& grep "pattern"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3876 次 |
| 最近记录: |