我有一个文件,比方说“ bigfile”,具有以下形式的表格数据,
a1 b2 a3 1
b1 a2 c3 0
...依此类推。
我想在Linux计算机上使用内置的“排序”程序,因此请按第四个字段(数字)然后同时按第一个字段对该文件进行排序。我翻阅了几次手册页,然后想出的只是,
sort -n -k4,4 -k1,1 bigfile
有没有一种方法可以使“排序”执行我想要的操作,或者我必须编写自己的自定义程序?
谢谢。
从联机帮助页:
POS是F [.C] [OPTS],其中F是字段编号,C是字段中的字符位置;两者都是起源1。如果-t和-b均无效,则将从前一个空格的开头开始计算字段中的字符。OPTS是一个或多个单字母排序选项,它会覆盖该键的全局排序选项。如果没有给出密钥,则使用整行作为密钥。
sort -k4,4n -k1,1 bigfile
应该这样做。
另一个选择是sort -k1,1 bigfile | sort --stable -n -k4,4
“稳定排序”,这意味着第4个字段上的平局由初始位置解决,该位置由排序的第一个遍历设置为第一个字段。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句