AWK在遍历数组时返回重复的记录

AWK在遍历数组时返回重复的记录,awk,Awk,我正在使用awk将来自15m记录(文件XXX)的数据转换为数组。当结束awk时,我打印每个聚合记录(大约2,25 M),但它不时返回一个重复记录。代码(简化)如下所示: awk '{ id=substr($0,18,25) date=substr($0,131,14) field_#=substr($0,##,###) --> Many fields key=id "," date array_#[key]=array_#[key] + fi

我正在使用awk将来自15m记录(文件XXX)的数据转换为数组。当结束awk时,我打印每个聚合记录(大约2,25 M),但它不时返回一个重复记录。代码(简化)如下所示:

awk '{
  id=substr($0,18,25)
  date=substr($0,131,14)
  field_#=substr($0,##,###)               --> Many fields
  key=id "," date
  array_#[key]=array_#[key] + field_#     --> 4 arrays, some using 3 fields
}END{
  for key in array_1{
    print(array_1[key] "," array_2[key] "," array_3[key] "," array_4[key])
  }
}' XXX
代码中是否存在可能导致重复记录的内容? 与此相关的是,当出现这种情况时,它会发出一条“cannot fork”内存错误消息,因为它正在使用机器上16GB内存中的12GB。是否有任何原因会导致该故障

我已经检查过文件中没有任何特殊字符,因为它们可能导致“伪造”重复密钥

######资料
欢迎来到SO,为了更好地理解question.PS,您可以在您的帖子中发布输入和输出的示例吗<5月5日的代码???难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难难355支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付支付##########20180529102501#################9876123####现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场现场基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基基脚本所做的是将VOL字段添加到数组中,对于每节课,你如何将数据与原始问题一起附加。
INPUT
#...### IDENTIFIER   ####...### VOL_UP    VOL_DOWN  VOL_TOTAL ###...#### YYYYMMDDHHMISS #####
#...### 9876123      ####...### 123456    665204500 665327956 ###...#### 20180529020103 #####
#...### 7854954      ####...### 654       456121    456775    ###...#### 20180529102501 #####
#...### 9876123      ####...### 105251    58044518  58149769  ###...#### 20180529020103 #####

OUTPUT
#...### 9876123      ####...### 228707    723249018 723477725 ###...#### 20180529020103 #####
#...### 7854954      ####...### 654       456121    456775    ###...#### 20180529102501 #####