如何对多列进行排序,然后剪切两列

如何对多列进行排序,然后剪切两列

我有文件

6 0 stephen
5 1 john
4 2 margaret
2 3 jack

我一直在使用cat age_names | sort -n -r age_names.txt

我希望它按年龄降序显示人们的名字,同时只显示他们的名字

答案1

尝试 sort -n -r age_names.txt | cut -d' ' -f3

您的排序是正确的(假设第一列是年龄)。 cut 命令指定分隔符为空格 (' '),并删除除第三列之外的所有列(第三列似乎包含名称)。

答案2

考虑到年龄位于第一列并使用以下命令进行测试,效果很好

sort -k1 -nr file.txt | awk '{print $NF}'

相关内容