我正在尝试将定界文件转换为Linux中的数据表。某些列中值的含义取决于单独列中的值。如何根据列的值创建其他列?
根据第2列的值,即00或01,第3列和第4列的解释是不同的。因此,如果我具有以下值。
A1,00,N1,T1
A1,01,N2,T2
A2,00,N3,T3
A2,01,N4,T4
预期结果应如下。请注意,我现在有两个新列。
A1,00,N1,T1,N2,T2
A2,01,N3,T3,N4,T4
答案 0 :(得分:1)
$ awk -F, ' #1
{A[$1] = A[$1] FS $3 FS $4} #2
END {for(i in A) print i FS "00" A[i]} #3
' file
A1,00,N1,T1,N2,T2
A2,00,N3,T3,N4,T4
Array[first-column]
设置为其当前值,然后设置第三和第四列。 A[A1]
的最终值为,N1,T1,N2,T2