我有一系列的分隔文件,其中一些有一些不好的數據,可以通過對它們進行列計數來識別。我可以使用以下命令找到它們:使用管道與查找命令
find ./ -name 201201*gz -mtime 12
它們都是gzipped,我不想將它們全部解壓縮。所以檢查列計數我一直在做我跑這是對每個文件第二個命令:
zcat ./path/to/file.data | awk '{print NF}' | head
我知道我不能對每個文件運行一個命令-exec通過尋找,卻怎麼也我也讓它穿過管道?一對夫婦的事情,我試過,均未我希望工作,這兩者都不做:
find ./ -name 201201*gz -mtime 12 -print -exec zcat {} \; | awk '{print NF}'| head
find ./ -name 201201*gz -mtime 12 -print -exec "zcat {} | awk '{print NF}'| head" \;
這似乎做的第一個文件,然後給我: xargs的:用zcat:由信號終止13 – Ilion 2012-02-15 18:13:12
嗯真,似乎ZCAT假定約翰內斯的解決方案是正確的。你需要對每個文件進行zcat並將其管理爲awk。 – bensnider 2012-02-15 18:21:35