【问题标题】:Simultaneous pipe to grep and redirect to stdout同时管道到 grep 并重定向到标准输出
【发布时间】:2014-04-14 17:35:57
【问题描述】:

在 Linux bash 中,我正在尝试运行命令并 grep 获取参数:

command | grep

但是,我需要将 commad 的结果重定向到标准输出并同时将其通过管道传输到 grep(我需要同时查看 grep 结果和 command 导致标准输出)。

我用谷歌搜索了一下,尝试了一些变化,例如:

command | tee /dev/tty | grep

但是,没有运气。

我不想用这样的东西

command
command | grep

因为它很丑:)

谢谢,

【问题讨论】:

    标签: redirect grep stdout


    【解决方案1】:

    试试

    command | tee >(grep whatever)
    

    请注意,这两个符号之间没有空格:>(

    【讨论】:

    • 谢谢,这解决了我原来的问题,但添加了额外的问题这是我的代码:snmpget -v2c -c public 10.241.32.42 .1.3.6.1.4.1.28589.2.5.96.0 | tee >(grep -E "STRING: \"[0-9]\.[0-9]{3}\"") ;; SNMPv2-SMI::enterprises.28589.2.5.96.0 = "" ;;回声$?;; 0;; }}} 无论grep成功与否,“command | tee >(grep)”的退出状态都是“0”。
    • 除了通过管道传输到 grep 命令的所有输出之外,您还希望所有输出到文件中吗?
    猜你喜欢
    • 2016-04-26
    • 1970-01-01
    • 1970-01-01
    • 2013-02-10
    • 2016-01-31
    • 1970-01-01
    • 2012-05-28
    • 1970-01-01
    • 2018-05-15
    相关资源
    最近更新 更多