bash - 将 grep 输出重定向到文件

标签 bash shell

如果我执行

$ java -jar selenium-server.jar 2>&1 | grep "jetty.Server" 

一段时间后,我得到了我期望的输出:

$ 16:30:24.881 INFO - Started org.openqa.jetty.jetty.Server@6b0a2d64

但我尝试将 grep 输出重定向到一个文件,它什么也没写

$ java -jar selenium-server.jar 2>&1 | grep "jetty.Server" > /tmp/ebook_selenium

知道为什么吗?谢谢

最佳答案

我们发现 grep 在写入 stdout 而不是写入文件时刷新其输出。

grep --line-buffered 将强制 grep 在处理时输出每一行。

关于bash - 将 grep 输出重定向到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9054331/

相关文章:

linux - bash 参数相等性检查的意外输出

linux - 使用 find 命令查找、压缩和删除文件时出错

java - 如何将shell脚本输出重定向到java控制台

bash - 如何在 MAC 中使用终端查找 chrome 浏览器版本?

linux - 双重使用 bash 脚本 - 源代码和 exec 子 shell?动态返回/退出?

bash - 无法从 rc.local 中执行脚本

linux - shell解析csv文件,将字段分配给变量并在多列中打印

node.js - 通过Node.js子进程区分bash和sh

linux - Bash 脚本无法识别 "&"

linux - 脚本 : add (upcounting) number value between matching strings