我有一个文件,可以说是“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
稳定排序意味着第四个字段上的平局由初始位置解决,该位置由排序的第一遍设置为第一个字段。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)