【发布时间】:2010-11-12 05:24:35
【问题描述】:
我有一个 CSV 文件,我通过两种方式汇总:一种使用 Excel,另一种使用 awk。这是我在 Excel 中前 8 列的总数:
1) 2640502474.00
2) 1272849386284.00
3) 36785.00
4)
5) 107.00
6) 239259.00
7) 0.00
8) 7418570893330.00
这是我的awk 输出:
$ cat /home/jason/import.csv | awk -F "\"*,\"*" '{s+=$1} END {printf("%01.2f\n", s)}'
2640502474.00
$ cat /home/jason/import.csv | awk -F "\"*,\"*" '{s+=$2} END {printf("%01.2f\n", s)}'
1272849386284.00
$ cat /home/jason/import.csv | awk -F "\"*,\"*" '{s+=$8} END {printf("%01.2f\n", s)}'
7411306364347.00
请注意 1 和 2 如何完全匹配,但 8 相差数百万。我假设 Excel 的总数是正确的,那么为什么 awk 处理这个文件的方式不同?
【问题讨论】: