【问题标题】:grep result is not what I wantgrep 结果不是我想要的
【发布时间】:2017-04-10 10:57:52
【问题描述】:

java -version 输出如下:

> java -version
java version "1.8.0_101"
Java(TM) SE Runtime Environment (build 1.8.0_101-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.101-b13, mixed mode)

然后我运行grep 命令,但无法得到我预期的结果。

>java -version | grep "version"
java version "1.8.0_101"
Java(TM) SE Runtime Environment (build 1.8.0_101-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.101-b13, mixed mode)

我的预期结果只是第一行

java version "1.8.0_101"

为什么?

【问题讨论】:

  • 因为错误流没有经过grep| 管道仅重定向标准输出流。

标签: grep pipe


【解决方案1】:

java -version 将文本打印到标准错误,而不是标准输出。所以你应该这样做:

java -version 2>&1|grep "version"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-04-08
    • 1970-01-01
    • 2017-12-27
    • 1970-01-01
    • 2022-09-29
    • 1970-01-01
    • 2021-02-12
    • 2016-10-04
    相关资源
    最近更新 更多