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

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com