我有这种文件
A 1,2,3,4
B 1
C 1,2
Run Code Online (Sandbox Code Playgroud)
我想得到 awk 这个输出:
A 1
A 2
A 3
A 4
B 1
C 1
C 2
C 3
Run Code Online (Sandbox Code Playgroud)
试过的代码:
sed 's/,/\n&/g' file
Run Code Online (Sandbox Code Playgroud)
对 awk 有什么想法吗?
您能否尝试使用多字段分隔符概念,使用 GNU 中显示的示例编写和测试awk。
awk 'BEGIN{FS="[ ,]"} {for(i=2;i<=NF;i++){print $1,$i}}' Input_file
Run Code Online (Sandbox Code Playgroud)
第二种解决方案:拆分第二个字段值。
awk '{num=split($2,arr,",");for(i=1;i<=num;i++){print $1,arr[i]}}' Input_file
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
64 次 |
| 最近记录: |