【问题标题】:Pipe Java to Grep: Why not working?管道 Java 到 Grep:为什么不工作?
【发布时间】:2010-02-25 13:07:21
【问题描述】:

我正在尝试在 Bash 中运行这个非常简单的命令

java -cp nasa-top-secret.jar gov.nasa.RocketToMoon | grep -v codehaus

但是 grep 不起作用(它不会过滤掉我的字符串)。如何使用grep 过滤我的java 输出?

【问题讨论】:

  • java -cp nasa-top-secret.jar gov.nasa.RocketToMoon 的结果是什么?
  • @nanda,它导致了 OutOfMemoryException :)

标签: java bash grep pipe


【解决方案1】:

输出可能在 STDERR 上,试试这个:

java -cp nasa-top-secret.jar gov.nasa.RocketToMoon 2>&1 | grep -v codehaus

【讨论】:

    【解决方案2】:

    可能的情况

    1. 你实际上有所有的行 “codehaus”,所以 grep -v 给你 没有。我假设你知道-v 代表。
    2. 您的 java 程序没有打印 任何标准输出。检查你的 源并确保您的程序输出到标准输出。否则,请检查您的程序是否吐出它的标准错误。

    可能的故障排除步骤:

    1. 移除 grep 的管道,只运行 java 程序并 make 确保您的程序有输出。
    2. 在命令末尾加上2>&1 然后用 grep 重试

    【讨论】:

      猜你喜欢
      • 2014-04-23
      • 1970-01-01
      • 2014-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多