Sorting uniq命令-如何获取分隔符选项并基于列进行搜索?

Sorting uniq命令-如何获取分隔符选项并基于列进行搜索?,sorting,command,uniq,Sorting,Command,Uniq,下面是根据名为file.txt的第一列选项卡划分的文件进行排序 barbie 325 social activist david 214 IT professional david 457 mathematician david 458 biologist john 85 engineer john 98 doctor peter 100 statistician 我希望在排序命令的情况下,在第一列的基础上使用选项-t和-k运行uniq命令 uniq -d (

下面是根据名为file.txt的第一列选项卡划分的文件进行排序

barbie  325 social activist
david   214 IT professional
david   457 mathematician
david   458 biologist
john    85  engineer
john    98  doctor
peter   100 statistician
我希望在排序命令的情况下,在第一列的基础上使用选项-t和-k运行uniq命令

uniq -d (-t$'\t' -k1,1) file.txt [this is incorrect syntax in bracket , but i want to run it in similar way]
这很容易,但我找不到路

这样我就可以得到如下输出:

david   214 IT professional
john    85  engineer
请帮助我,提前感谢:

Debian uniq以前有此选项,但出于兼容性原因已将其删除。您可以轻松地创建自己的AWK或Perl脚本。这仅打印第一个字段第一次出现的行:

awk -F '\t' '!x[$1]++' file.txt
x[$1]是第一个字段$1内容上的关联数组;每行的值都会递增,但也是指定是否打印当前行的条件;对于否定,只有在以前未遇到此字段值时才为真。提醒:AWK脚本的一般形式是零个或多个条件{action},这两部分都是可选的;如果缺少{action},默认操作是打印当前行。[如果缺少该条件,则无条件执行该操作。]

Debian uniq以前有此选项,但出于兼容性原因已将其删除。您可以轻松地创建自己的AWK或Perl脚本。这仅打印第一个字段第一次出现的行:

awk -F '\t' '!x[$1]++' file.txt

x[$1]是第一个字段$1内容上的关联数组;每行的值都会递增,但也是指定是否打印当前行的条件;对于否定,只有在以前未遇到此字段值时才为真。提醒:AWK脚本的一般形式是零个或多个条件{action},这两部分都是可选的;如果缺少{action},默认操作是打印当前行。[如果条件缺失,则无条件采取行动。]

214 IT professional来自哪里?为什么Engineer是大写的,而所有拼写错误的都是小写的?214 IT professional来自哪里?为什么Engineer是大写的,而所有拼写错误的都是小写的?