zcat用文件名grep

时间:2009-03-11 11:06:55

标签: unix grep zcat

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

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

感谢

3 个答案:

答案 0 :(得分:4)

使用zgrep

顺便说一句。您尝试做的事情可以通过find

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

答案 1 :(得分:2)

如果您使用 zgrep 而不是zcat + grep(也是如此),您可以像这样选择:

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

答案 2 :(得分:0)

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