名字
lsort - 给一个列表的元素排序
总览
lsort ?options? list
描述
-ascii
-dictionary
-integer
-real
-command command
-increasing
-decreasing
-index index
-unique
关键字

名字

lsort - 给一个列表的元素排序

总览

lsort ?options? list

描述

这个命令给 list 的元素排序,返回按整理后的次序(排列)的一个新列表。lsort 命令的实现使用了归并排序算法,这个算法有 O(n log n) 性能特征的一个稳定的排序算法。

缺省的使用 ASCII 排序,并按升序返回结果。但是,可以在 list 的前面指定任何下列参数来控制排序处理(接受唯一性的缩写):

-ascii
字符串比较使用 ASCII (作为)整理(collation)次序。这是缺省的。

-dictionary
使用字典式样的比较。除了下列两点之外它同于 -ascii。(a) 除了作为一个 tie-breaker 之外忽略大写,(b) 如果字符串包含嵌入的数字,数字作为整数来比较而不是字符。例如,在 -dictionary 模式下,bigBoy 排序在 bigbangbigboy 之间,而 x10y 排序在 x9yx11y 之间。

-integer
把列表元素转换成整数并使用整数比较。

-real
把列表元素转换成浮点值并使用浮点比较。

-command command
使用 command 作为一个比较命令。想比较两个元素,要求由 command 构成的一个 Tcl 脚本的值,并加上两个元素作为(向这个过程)附加的参数。如果第一个参数被认定为小于、等于、或大于第二个参数,这个脚本应该分别返回小于、等于、或大于零的一个整数。

-increasing
按升序整理这个列表(“最小” 的项目在最先)。这是缺省的。

-decreasing
按降序整理这个列表(“最大” 的项目在最先)。

-index index
如果指定了这个选项,list 的每个元素自身必须是一个正确的 Tcl 子列表。不是基于整个子列表来排序,lsort 将从每个子列表中提取第 index 个元素并基于这个给定的元素来排序。index 允许使用关键字 end 来在子列表的最后的元素上排序。例如,
lsort -integer -index 1 {{First 24} {Second 18} {Third 30}}
返回 {Second 18} {First 24} {Third 30}。这个选项比使用 -command 来完成同样的功能要更加高效。

-unique
如果指定了这个选项,则保留在这个列表中找到的重复的(duplicate)元素的最后一组。注意重复是相对于在排序中使用的比较来决定的。所以如果使用了 -index 0{1 a}{1 b} 将被认为是重复的并只保留第二个元素 {1 b}

关键字

元素, 列表, 次序, 排序
Copyright © 1993 The Regents of the University of California.
Copyright © 1994-1996 Sun Microsystems, Inc.
Copyright © 1999 Scriptics Corporation
Copyright © 1995-1997 Roger E. Critchlow Jr.

[中文版维护人]

寒蝉退士

[中文版最新更新]

2001/09/06

《中国 Linux 论坛 man 手册页翻译计划》:

www.CMPP.net