ls -ltr|grep 'Mar 4'| awk '{print $9 }'|zcat -fq |grep 12345我想要找到在某个日期修改的所有文件,然后对它们执行zcat,并在字段中搜索数字字符串。
上面的方法不起作用,因为它在文件名中搜索字符串,而不是文件本身。
有什么帮助吗?
我
发布于 2009-03-11 10:39:33
使用xargs对awk输出的文件名运行grep:
ls -ltr | grep 'Mar 4' | awk '{print 9}' | xargs zcat -fq | grep 12345或者,我猜,从awk本身运行管道的其余部分。
发布于 2009-03-11 10:38:16
请尝试使用find。和/或xargs。
发布于 2009-03-11 10:40:46
如果我没看错您的命令行,zcat正在尝试解压文件名而不是它们的内容。使用xargs来解决这个问题:
ls -ltr|grep 'Mar 4'| awk '{print $9 }'|xargs zcat -fq |grep 12345https://stackoverflow.com/questions/633998
复制相似问题