【发布时间】:2017-08-04 15:38:04
【问题描述】:
我是 Bash 新手。我有一个包含四列的 CSV 文件,值用逗号分隔:
jack,england,498,a
roy,wales,344,b
ben,ireland,679,a
ron,scotland,895,a
emma,england,344,a
jason,scotland,566,a
ketty,wales,433,b
我的输出应该是这样的:
england,842
ireland,679
scotland,1461
wales,777
城市名称必须按字母顺序排序,输出只能在终端上打印。
这是我的代码:
#! /bin/awk -f
awk '{a[$1" "$2]+=$3}END{for (i in a){print i,a[i]}}' file.csv | sort -k2
当我使用awk -f file.awk 运行此代码时,它会给我一个语法错误。我已经阅读了很多关于这个问题的答案,但没有一个对我有帮助。
invalid char in expression '''
awk 之后的语法错误。
【问题讨论】:
-
顺便说一句,当您只想按
$2求和时,为什么要将$1" "$2作为索引? -
抱歉,我只是想运行我的代码,看看输出是什么。我知道如何处理。