我在 Linux 中有一个文件,用逗号分隔,字符串字段用双引号 "括起来,我需要将它们转换为管道分隔符,请分享您的输入。
示例:
输入:
"2017-09-30","ACBD,TVF","01234",NULL,18,NULL,"686091802","BANK OF ABCD, LIMITED, THE",790456
输出:
2017-09-30|ACBD,TVF|01234|NULL|18|NULL|686091802|BANK OF ABCD, LIMITED, THE|790456
提前致谢...
谢谢
最佳答案
这是使用 gnu awk
使用 FPAT
变量的解决方案:
awk -v OFS='|' -v FPAT='"[^"]*"|[^,]*' '{
for (h=1; h<=NF; h++) printf "%s%s", $h, (h < NF ? OFS : ORS)
}' file
"2017-09-30"|"ACBD,TVF"|"01234"|NULL|18|NULL|"686091802"|"BANK OF ABCD, LIMITED, THE"|790456
关于Linux 将逗号分隔文件转换为管道,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47144075/