gpt4 book ai didi

linux - 如何编写 awk 命令来对行数据进行分组并转储到文件

转载 作者:太空宇宙 更新时间:2023-11-04 09:39:24 26 4
gpt4 key购买 nike

一个数据文件由多行数据组成。快速查看数据文件如下:

./gc_string/datadata.distr  10  1273377106  2
./gc_string/datadata.distr 10 -540812264 2
./gc_string/datadata.distr 10 318171673 2
./app_fib/datadata.distr 4 -1593911137 3
./app_fib/datadata.distr 4 -1345649758 3
./app_fib/datadata.distr 5 -1545930833 3
./app_fib/datadata.distr 5 1916879527 3
./app_fib/datadata.distr 5 609112984 3
./app_fib/datadata.distr 6 111417553 3
./app_fib/datadata.distr 6 -1545460791 3
.........

我想要做的是将行数据分组并根据第一列将它们写入每个不同的文件。规则是,如果第一列具有相同的值,则除第一列外的所有列都将写入同一文件。文件名基于第一列值。例如,将使用上述数据生成两个文件:

gc_string.txt
-------------------
10 1273377106 2
10 -540812264 2
10 318171673 2

app_fib.txt
-------------------
4 -1593911137 3
4 -1345649758 3
5 -1545930833 3
5 1916879527 3
..

我认为 bash awk 可以执行此任务。我尝试了几种方法但都失败了。谁能给我提示?谢谢

最佳答案

awk '{split($1,a,"/"); print $2,$3,$4 > a[2] ".txt"}' datafile

关于linux - 如何编写 awk 命令来对行数据进行分组并转储到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23024716/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com