awk '{a[$2]=a[$2]" "$1} END {for(i in a) print i"\t"a[i]}'
答案:1 悬赏:0
解决时间 2021-02-21 13:26
- 提问者网友:相思故
- 2021-02-21 10:30
看不懂啊,哪位大神能帮忙详细解释一下,跪谢!!!!
最佳答案
- 二级知识专家网友:陪我到地狱流浪
- 2021-02-21 11:12
把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
比如
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
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯
• 手机登qq时,显示手机磁盘不足,清理后重新登 |
• 刺客的套装怎么选啊? |