仅对第二列进行排序

仅对第二列进行排序

我正在尝试对通常(并非总是)行所在的文件进行排序

whatever:[A-Ba-b0-9_]: values

其中字段用 分隔:。有些行不遵循这种模式,我对它们不感兴趣,它们可以出现在输出中的任何位置。

我只想对第二列(而不是值)上的行进行排序,但是当我这样做时sort -t: -k 2 myfile,它会对所有行上的文件进行排序。

如何使用-k才能获得我需要的东西?

答案1

sort -t: -k2

对从第二个字段到行尾的行部分进行排序。如果要对第二个字段进行排序,则必须指定排序键的结束位置:

sort -t: -k2,2

仅对第二个字段进行排序。

相关内容