我在目录中有一些gzip压缩日志文件,它们看起来像这样:
log/day_1_time_log_1.log.gz
...
log/day_1_time_log_100.log.gz
log/day_1_location_log_1.log.gz
...
log/day_1_location_log_100.log.gz
我想从包含字符串json
的所有日志中取出第4列(一些time
字符串)并将它们合并到一个文件中。这就是我所做的,我得到zcat: unknown compression format
错误。
find logs/* -name *time* | zcat | awk -F"\t" '{ print $4 }' > output.json
我的代码出了什么问题?我可以直接将其传递给awk
吗?
答案 0 :(得分:0)
您可以使用xargs
:
find logs/ -name '*time*.log.gz' -print0 |
xargs -0 -I % gzcat % | awk -F'\t' '{print $4}' > output.json