我有很多文件,都具有相同的行数,在第 1 列中都具有相同的值(我想保留)。问题是输出改变了顺序。
cat file1.dat
Sep-12 1082
Oct-12 1377
Nov-12 1095
Dec-12 888
Jan-13 1184
Feb-13 1036
Mar-13 895
Apr-13 1207
May-13 1325
Jun-13 1147
Jul-13 1256
Aug-13 1362
Sep-13 1260
cat file2.dat
Sep-12 5185
Oct-12 5707
Nov-12 5427
Dec-12 3321
Jan-13 8093
Feb-13 6000
Mar-13 6348
Apr-13 6921
May-13 6959
Jun-13 6246
Jul-13 6634
Aug-13 6704
Sep-13 6350
.....etc
当我跑步时
awk '{a[$1]+=$2}END{for (k in a) print k,a[k]}' dat_files/*.dat
我明白了
May-13 20086
Nov-12 16175
Jun-13 74138
Mar-13 16598
Jan-13 18293
Aug-13 21853
Feb-13 14831
Jul-13 20614
Sep-12 12480
Sep-13 20717
Oct-12 14099
Apr-13 23954
Dec-12 11469
这似乎没有特定的顺序(而不是我想要的)。我希望输出与所有 .dat 文件的顺序相同,即以
Sep-12 (total)
Oct-12 (total)
Nov-12 (total)
etc...
我以为 awk 按顺序读取每个文件中的数据...?任何帮助,将不胜感激。谢谢!