按列排序文件内容

时间:2018-08-04 09:37:04

标签: shell unix

我有一个文件,该文件是通过grepping目录中多个文件的内容而形成的。该文件的内容如下:

14:59:12,398 254900 269 112
14:59:14,457 255000 169
14:59:18,517 255100 69
12:46:21,196 11000 192127

如何使用Unux命令按第一列(实际上是时间戳)对文件进行排序?请注意,每行可能有不同数量的条目/列。

1 个答案:

答案 0 :(得分:0)

sort file

会这样做。

sort默认情况下将整行用作排序键,这意味着它将在需要时使用第一列,然后使用该行的其余内容。

如果您想在第一个以空格分隔的列上进行显式排序:

sort -k1,1 file

使用第一列进行排序。在文件名之前添加-s,以使sort使用“稳定”的排序算法,这意味着它不会更改与输入中具有相同键的行的顺序。

这假定时间戳在小于10的小时数内使用零填充(或空格缩进)的数字。如果不是这种情况,请使用sort -nsort -k1,1n进行数字排序。