我有一个像这样的输入文件,字段分隔符为空白
AAABBB: 243.234.12.2 123.3.2 231.5.12 451.192.29.9
BBXDS: 324.22.32.5 235.235.283 234.239. 234.23.23.1
DDF: 23.12.59.09 98.39.239.29 394.293.2.2
Run Code Online (Sandbox Code Playgroud)
输出应如下所示:
AAABBB: 243.234.12.2
AAABBB: 123.3.2
AAABBB: 231.5.12
AAABBB: 451.192.29.9
BBXDS: 324.22.32.5
BBXDS: 235.235.283
BBXDS: 234.239.
.....
Run Code Online (Sandbox Code Playgroud)
每行的第一个字段是一个标识符,应在相应行的每一列前面作为新行打印,直到行尾。
相当直接:
awk '{ for(i=2; i <= NF; i++) print $1, $i}' < input
Run Code Online (Sandbox Code Playgroud)
在每一行,循环从2直到最后一个字段(N
的棕土F
ields),打印字段1和字段环状。