LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
12
返回列表 发新帖
楼主: BBDD

关于sort的问题[基本解决]

[复制链接]
 楼主| 发表于 2004-4-7 09:48:10 | 显示全部楼层
关于这一点请看我最早的帖子。
我要的结果是这样的:
;ab
;ad
aa
ac

所以请不要“先按长度排序”。
发表于 2004-4-7 09:50:17 | 显示全部楼层
那如果长度不一,楼主按什么规则来排序呢?
 楼主| 发表于 2004-4-7 10:00:55 | 显示全部楼层
算了,我放弃了,就当我没问过吧。
谢谢各位了。
发表于 2004-4-7 10:02:46 | 显示全部楼层
楼主何故放弃呢?其实只要你把规则说明白了,脚本很容易写啊。:ask
 楼主| 发表于 2004-4-7 10:22:51 | 显示全部楼层
解决了,只要先export LC_ALL=C,然后再sort就行了。
====
又试了一下,好像只要export LC_COLLATE=C也就可以了。
发表于 2004-4-7 10:40:05 | 显示全部楼层
恭喜~~
其实在下依然不明白楼主要求的排序,概念是怎样?规则又是怎样?长度不一的字符串进行ASCII排序,如果不按长度来排,如何排呢?
发表于 2004-4-7 10:56:09 | 显示全部楼层
最初由 BBDD 发表
解决了,只要先export LC_ALL=C,然后再sort就行了。
====
又试了一下,好像只要export LC_COLLATE=C也就可以了。

我记得很久以前r2007兄说过这样的排序方法~~,
发表于 2004-4-7 11:16:21 | 显示全部楼层
info sort
   A pair of lines is compared as follows: if any key fields have been
specified, `sort' compares each pair of fields, in the order specified
on the command line, according to the associated ordering options,
until a difference is found or no fields are left.  Unless otherwise
specified, all comparisons use the character collating sequence
specified by the `LC_COLLATE' locale.
发表于 2004-4-7 12:10:51 | 显示全部楼层
最初由 javalee 发表
我记得很久以前r2007兄说过这样的排序方法~~,

我好像不记得:p ,就本帖而言,最好使用LC_ALL,通常如果系统中未定义LC_ALL,LC_CTYPE,LANG的话,可以直接使用LC_COLLATE,都是从info读到的,照搬过来。
在bash中可以这样,LC_ALL=C的设置仅限于当前行。

  1. LC_ALL=C sort file
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表