【发布时间】:2021-05-09 13:29:46
【问题描述】:
我有一个文件,带有标题
name, age, id, address
Smith, 18, 201392, 19 Rand Street, USA
Dan, 19, 029123, 23 Lambert Rd, Australia
Smith, 20, 192837, 61 Apple Rd, UK
Kyle, 25, 245123, 103 Orange Rd, UK
我想整理出重复的名字,所以结果是:
Smith, 18, 201392, 19 Rand Street, USA
Dan, 19, 029123, 23 Lambert Rd, Australia
Kyle, 25, 245123, 103 Orange Rd, UK
# prints 3 for 3 unique rows at column name
我尝试过sort -u -t, -k1,1 file、awk -F"," '!_[$1]++' file,但它不起作用,因为我的地址中有逗号。
【问题讨论】:
-
所以只有名字的第一次出现在结果文件上?
Kyle呢? -
@Niloct 是的。已编辑,抱歉!错过了
-
试试 awk -F, 'NR==1||seen[$1]{next}{seen[$1]++}1' 文件
-
awk -F"," '!_[$1]++' file有效,如果您不需要输出标题,则必须丢弃第一个输出行。 -
这能回答你的问题吗? Is there a way to 'uniq' by column?