awk一个衬垫从两列创建第三列字段

时间:2017-01-04 19:22:13

标签: awk

寻找一个awk one liner,根据第二个字段创建一个新的第三个字段。

开始数据:

column1,test.columna
column2,test1.columnb
column3,test2.columnc

结束数据,其中test.columna(第二个字段)现在是#34; columnatest" (第一行)在由","。

分隔的新的第三个字段中
column1,test.columna,columnatest
column2,test1.columnb,columnbtest1
column3,test2.columnc,columnctest2

让第三列本身足够简单:

awk -F, '{print $2}' a | awk -F. '{print $2$1}'

columnatest
columnbtest1
columnctest2

无法合并所有三个字段。

1 个答案:

答案 0 :(得分:2)

$ awk 'BEGIN{FS=OFS=","} {split($2,f,/\./); print $0, f[2] f[1]}' file
column1,test.columna,columnatest
column2,test1.columnb,columnbtest1
column3,test2.columnc,columnctest2