/ usr / bin / sort根据第三个字段对文件进行排序

时间:2013-09-16 19:12:31

标签: macos sorting terminal

我有一个文件看起来像:

  

- : - :??未知 - 供应商100

     

00:11:d9 TiVo 951

     

cc:3a:61 SAMSUNG ELECTRO MECHANICS CO。,LTD。 259

     

84:1b:5e NETGEAR 82

     

74:e2:f5 Apple 829

字段由制表符分隔。 我应该使用什么组合来将此文件从最高字节数到最低字节进行排序。 字节数是文件的最后一个字段。 我试过用:

  

/ usr / bin / sort -nk3 filename.txt

但它不起作用。

2 个答案:

答案 0 :(得分:2)

从手册页:

   -t, --field-separator=SEP
          use SEP instead of non-blank to blank transition

所以你想要

sort -t $'\t' -nk3 filename.txt

答案 1 :(得分:0)

您可以使用awk获取最后一个字段并在开头打印,然后使用它来执行sort-r选项使用从最高到最低的反向顺序。

awk '{print $NF, $0}' filename.txt | sort -nk1r | awk '{$1="";print $0}'