BASH中多列文件的反向排序顺序

新手上路,请多包涵

我有以下文件:

 1 2 3
1 4 5
1 6 7
2 3 5
5 2 1

我希望将文件排序为第二列,但从最大数字(在本例中为 6)到最小数字。我试过了

sort +1 -2 file.dat

但它按升序(而不是降序)排序。

结果应该是:

 1 6 7
1 4 5
2 3 5
5 2 1
1 2 3

原文由 Valerio D. Ciotti 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 625
2 个回答
sort -nrk 2,2

成功了。

n 用于数字排序,r 用于倒序,k 2,2 用于第二列。

原文由 Danstahr 发布,翻译遵循 CC BY-SA 3.0 许可协议

你试过 -r 吗?从 手册页

-r,–反向

          reverse the result of comparisons

原文由 Brian Agnew 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题