gpt4 book ai didi

Linux - 根据条件分割CSV

转载 作者:太空宇宙 更新时间:2023-11-04 04:26:08 24 4
gpt4 key购买 nike

我有一个包含以下记录的大型 CSV 文件:

60,1572236,3,58394247,\N,\N,\N,1925720,\N,2011-11-25 12:55:53,2011-11-25 12:55:53
61,2875109,4,58394209,1234,\N,4025175,\N,\N,2011-11-25 12:55:53,2011-11-25 12:55:53
62,2875109,4,58394209,\N,\N,\N,9860904,\N,2011-11-25 12:55:53,2011-11-25 12:55:53
63,2875109,5,58394209,8756,\N,\N,8615157,\N,2011-11-25 12:55:53,2011-11-25 12:55:53
64,2686696,3,58394211,\N,\N,59512,\N,\N,2011-11-25 12:55:53,2011-11-25 12:55:53
65,2686696,3,58394211,\N,\N,4025893,\N,\N,2011-11-25 12:55:53,2011-11-25 12:55:53

我想将文件拆分为2个文件,拆分的条件是第5列中的值,一个文件将获取该列中没有值的行(\N),而该列中具有值的列将转到另一个文件。

在上面的示例中:第 2,4 行将转到一个文件,其余行将转到另一个文件。

有什么想法如何在 Linux 中做到这一点吗?

最佳答案

您可以使用awk:

$ awk -F, '$5=="\\N"{print >"file1.csv"; next}; {print >"file2.csv"}' data.csv
  • file1.csv 将包含 \N
  • file2.csv 将包含其他内容

关于Linux - 根据条件分割CSV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8819447/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com