awk '{a[$2]=a[$2]" "$1} END {for(i in a) print i"\t"a[i]}' input_file >output哪位大神详解一下谢谢
发布网友
发布时间:2022-04-23 12:33
我来回答
共1个回答
热心网友
时间:2023-10-13 13:06
把input_file里第二列相同的第一列按空格拼起来,最后输出第二列和拼起来的结果,保存到output里面
比如
root@ubuntu:~# cat input_file
1 2
a 2
1 3
2 3
root@ubuntu:~# awk '{a[$2]=a[$2]" "$1} END {for(i in a) print i"\t"a[i]}' input_file
2 1 a
3 1 2
root@ubuntu:~# awk '{a[$2]=a[$2]" "$1} END {for(i in a) print i"\t"a[i]}' input_file >output
root@ubuntu:~# cat output
2 1 a
3 1 2