linux - 使用 Unix 排序对多个键进行排序

标签 linux unix sorting

我有可能需要按 1-n 个键排序的大文件。其中一些键可能是数字,而其中一些可能不是。这是一个固定宽度的柱状文件,因此没有分隔符。

有没有用 Unix 排序的好方法?只需一键,就像使用“-n”一样简单。我已经阅读了手册页并简单地搜索了谷歌,但没有找到一个很好的例子。我将如何实现这一目标?

注意:由于文件大小的可能性,我已经排除了 Perl。这将是最后的手段。

最佳答案

请注意:

如果您想主要按字段 3 对文件进行排序,然后按字段 2 对文件进行排序,您需要这样:

sort -k 3,3 -k 2,2 < inputfile

不是这个: sort -k 3 -k 2 < inputfile它按从字段 3 开头到行尾的字符串对文件进行排序(这可能是唯一的)。

-k, --key=POS1[,POS2]     start a key at POS1 (origin 1), end it at POS2
                          (default end of line)

关于linux - 使用 Unix 排序对多个键进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/357560/

相关文章:

linux - 通过给定输入获取输出 -Linux

regex - Vim:使用多种模式排序

linux - 在 bash 中按日期字段对日志进行排序

iphone - 在排序的核心数据获取结果中排序?

android - 在 Android 上加载 libpthread.so 时出错

c++ - 如何从 pthread 获取 pid

linux - 在 csh 中运行 unix ksh 命令

unix - 使Vbscript在linux环境下运行

bash - : ${ROOT_DIR: ="."} do in a bash script? 是什么

Python和环境变量