unix 命令sort--以字段排序

说明

sort命令可以用 –k 选项指定排序的字段,并且用 –t 选项来选择字段定界符。

如果未指定 –t 则表示字段以空白分割且记录内开头与结尾的空白都将忽略,如指定 –t 选项,则被指定的字符会分隔字段,且空白是有意义的。

-k 选项的后面接着的是一个字段的编号,或者是一对数字,有时在 –k 之后可以用空白分隔。

字段以及字段里的字符编号是由 1 开始的。

如果仅指定一个字段编号,则排序键值会自该字段的开始处开始,一直继续到记录的结尾。

如果给的是一对用逗号隔开的字段数字,则排序键值将由第一个字段的开始处开始,结束与第二个字段值的结尾。

使用点号字符位置,则比较的开始(一对数字的第一个)或结束(一对数字的第二个)在该字符位置处:-k2.4,5.6指的是从第二个字段的第四个字符开始比较一直比到第五个字段的第六个字符。

当出现多个 –k 选项时,会先从第一个键值字段开始排序,找出匹配该键值的记录后,再进行第二个键值字段的排序。

posted @ 2013-06-07 10:58  顺水的船  阅读(1320)  评论(0)    收藏  举报