日期:2014-05-16  浏览次数:20715 次

如何将一行内容中部分列保持不变,最后一列字符串分成多行显示
示例如下:
file1
1,2,3,100.200.300
2,3,4,600.700

输出结果应该为:
1,2,3,100
1,2,3,200
1,2,3,300
2,3,4,600
2,3,4,700

最好用awk实现。
想了很久,找了很久,没找到合适的办法。在这里请教各位神仙。多谢。

------解决方案--------------------
$ awk -F, '{t=$1","$2","$3;gsub(/\./,"\n"t",")}1' test ?
1,2,3,100
1,2,3,200
1,2,3,300
2,3,4,600
2,3,4,700