我的文件是一个包含逗号分隔字段的 csv
文件。
我试图按第一个字段将文件拆分为多个文件。我做了以下事情:
cat myfile.csv | awk -F',' '{print $0 > "Mydata"$1".csv"}'
它确实拆分了文件,但是文件已损坏,每个文件的最后一行都不完整。断裂位置似乎是随机的。有人有同样的问题吗?
最佳答案
这些类型的问题总是因为您在 Windows 上创建了输入文件,所以它在行尾有虚假的 control-Ms。在您的输入文件上运行 dos2unix 以清理它,然后重新运行您的 awk 命令,但将其重写为:
awk -F',' '{print > ("Mydata" $1 ".csv") }' myfile.csv
解决几个不相关的问题。
关于linux - awk 拆分文件给出不完整的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18876612/