如何处理此文本

时间:2014-09-26 11:31:57

标签: linux bash shell

我有这个文件

86-22-63385835,63385836,63385933
86-0577-88609993,88835386 
86-21-58947602,58947603
0086-755-33186858,33186862,33186859

我想要这样的结果

86-22-63385835
86-22-63385836
86-22-63385933
86-0577-88609993
86-0577-88835386 
86-21-58947602
86-21-58947603
0086-755-33186858
0086-755-33186862
0086-755-33186859

任何人都可以帮助我。非常感谢你。

2 个答案:

答案 0 :(得分:4)

你可以通过awk,

来做到这一点
$ awk -F[,-] '{var=$1"-"$2; for (i=3;i<=NF;i++){print var"-"$i}}' file
86-22-63385835
86-22-63385836
86-22-63385933
86-0577-88609993
86-0577-88835386 
86-21-58947602
86-21-58947603
0086-755-33186858
0086-755-33186862
0086-755-33186859

答案 1 :(得分:0)

这是你的回答。

awk -F "," '{print $1}' 

在快捷方式中,awk将所有行划分为&#34;,&#34;并将打印第一个单词。