【发布时间】:2021-10-15 10:11:15
【问题描述】:
我正在尝试使用 AWK 处理逗号分隔的文本文件并插入新列。 我想将第二列的内容分成三部分并插入三列 在新文本文件中的 B 列之后。
插入.txt - 我的数据
column A, name|ID1234 @ tag1, column C, column D
我正在尝试产生的输出
column A, name|ID1234 @ tag1, name, ID1234, tag1, column C, column D
我尝试过的代码
#!/bin/awk
BEGIN {
FS=","
OFS=","
}
{
# Split Column B - twice
split($2,a,"|") #a[1] a[2] seperated by |
split(a[2],b,"@") #b[1] b[2] seperated by @
print $1,$2,a[1],b[1],b[2];
{for(i=3;i<=NF;++i) printf $i}
}
awk -f insert.awk insert.txt > output.txt
如何将输出格式化为全部在一行上,用插入的列用逗号分隔?
是否可以在输出过程中修剪每列开头和结尾的空白?
谢谢 约书亚
【问题讨论】:
标签: awk