【发布时间】:2018-03-06 09:33:36
【问题描述】:
我有一个带有逗号分隔值的文本文件,其中列值中有换行符。所以它使列数据拆分到下一行导致数据问题。
样本数据
"604","56-1203802","xx","VEN","null","50","1","20","N�
jTï"
"5526","841328305","yyINC","VEN","null","50","1","20","~R¿½K�ï
¿½ï¿½}("
"604","561203802","C","VEN",,"null","50","1","20","2ï½a��"
预期输出
"604","56-1203802","xx","VEN","null","50","1","20","N�jTï"
"5526","841328305","yyINC","VEN","null","50","1","20","~R¿½K���}("
"604","561203802","C","VEN",,"null","50","1","20","2ï½a��"
我需要删除双引号字符串中的换行符。
我尝试了下面的 awk 命令来删除它,但它没有按预期工作。
gawk -v RS='"' 'NR % 2 == 0 { gsub(/\n/, "") } { printf("%s%s", $0, RT) }' infile.txt > outfile.txt
所需的结果是从数据中删除 LF 和 CR 字符。
我为发布的类似问题尝试了解决方案,但对我不起作用。
文件中的换行符是不可见的,除非当它显示为 CR LF 时复制到 Notepad++。
【问题讨论】:
-
请不要发布数据的图像,我们不会将其输入并用于测试。
-
@JamesBrown 是的,现在改变了。请看一下
-
请为示例数据添加代码标签而不是引号。
-
您收到了last time you asked 的答案。阅读答案并提出一个具体的新问题(如果有的话)。