【问题标题】:zcat to grep with file namezcat 到 grep 文件名
【发布时间】:2010-10-12 15:44:27
【问题描述】:
ls -ltr|grep 'Mar  4'| awk '{print $9 }'|xargs zcat -fq |grep  12345

我现在正在使用此命令列出包含我的数字字符串的记录我怎样才能获得此命令来打印找到字符串的文件的名称?

谢谢

【问题讨论】:

  • 这不是重复,这是使用 633998 的答案并对其进行改进。

标签: unix grep zcat


【解决方案1】:

使用zgrep

顺便说一句。你想做的事可以用find

find  -newermt 'Mar 4' -and ! -newermt 'Mar 5' -exec zgrep -l '12345' {} \;

【讨论】:

    【解决方案2】:

    如果你使用 zgrep 而不是 zcat+grep(同样的),你可以像下面这样使用这个选项:

    ls -ltr | grep 'Mar 4' | awk '{print $9}' | xargs zgrep 12345
    

    【讨论】:

      【解决方案3】:

      -t 选项传递给xargs,使其在运行之前打印正在运行的命令(zcat 命令,包括文件名)。该命令会打印到 stderr,因此不会干扰您的管道。

      【讨论】:

        猜你喜欢
        • 2010-10-12
        • 2014-02-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-08-17
        • 2018-12-19
        • 2012-04-19
        • 2014-04-26
        相关资源
        最近更新 更多