合并文件后.csv文件中不需要的隔断线



我有一个文件列表:

youyou.log
youyou.log.1.gz
youyou.log.2.gz

首先,有合并:

find . -name "youyou.log.*.gz" -print0 | sort -z -rn -t. -k4 | xargs -0 zcat | cat - youyou.log > youyou_complete.log

然后我选择我需要的:

 awk '{OFS=","}{print $1, $2, $14, $15, $16 }' youyou_complete.csv > youyou_processed.csv 

youyou_processed.csv很干净,但我滚动并到达youyou.log部分,到处都是隔断线。

为什么会发生这种情况?

****更新

我注意到所有的混乱都是在awk命令之后开始的,有什么问题吗?

如果要合并所有文件,则需要使用

find . -name "youyou.lo*"

否则你会跳过第一个youyou.log,这就是为什么你得到了碎鸡蛋。

在第一个命令中,输出将转到youyou_complete。日志。但在第二个命令中,您的输入取自youyou_complete。中新社.

更改其中一个以使它们相同,您就可以开始了。

最新更新