运行awk批量数据时出现混乱

时间:2019-05-09 08:23:15

标签: linux bash shell awk

我正在尝试对大量数据运行awk,遇到了这个问题,当我为单个记录运行相同的awk时,效果很好。

我尝试了以下awk的单一记录,它产生了预期的输出,而不是在处理批量数据时出现问题。

这是数据:

ASY;2020;US;04;D090;13;41;33013       ;00731       ;0095 ;0000F26V07;2019-02-09;2019-01-30;2019-02-02;J4526403309                        ;86;01;  ; ;  ;; ; ;SPB;PKG;001;REG;P/P;001;125; 000000000;SPB;   ;   ;REG;   ; 00000000.0;USD;  ;01;P2;    ;03;00;  ;  ;     ;FSC; 000000001;22; 0000000000014.81; 0000000000009.63; 0000000000009.63

这是awk

formatted_record=`echo $record | awk  -F ';' '{print $3"@"$12"@"$6"@"$7"@"$11"@"$2"@"$1"@"$5"@"$8"@"$9"@"$13"@"$15"@"$16"@"$24"@"$25"@"$26"@"$27"@"$30"@"$31"@"$51"@"$53"@"$37"@"$38"@"$40"@"$48"@"$49"@"$4}'|sed "s/@/\',\'/g"`

使用一条记录运行时,我得到以下输出

'US','2019-02-09','13','41','0000F26V07','2020','ASY','D090','33013 ','00731 ','2019-01-30','J4526403309 ','86','SPB','PKG','001','REG','125',' 000000000',' 0000000000014.81',' 0000000000009.63',' 00000000.0','USD','01','FSC',' 000000001','04

当我运行其他批量记录时

'US','2019-02-09','13','41','0000F26V07','2020','ASY','D090','33013 ','00731 ','2019-01-30','J4526403309 ','86','','','','','','','','','','','','','','04'

缺少数据“ 86”之后的许多字段,我不确定为什么

我以前没有写过很多脚本,我不知道这是怎么回事。 注意:我正在后台运行的脚本中运行此awk。 (我在后台运行大量负载的同一脚本的许多实例)。我想这与处理无关。

谢谢

0 个答案:

没有答案