Chinaunix首页 | 论坛 | 博客
  • 博客访问: 26278644
  • 博文数量: 2065
  • 博客积分: 10377
  • 博客等级: 上将
  • 技术积分: 21525
  • 用 户 组: 普通用户
  • 注册时间: 2008-11-04 17:50
文章分类

全部博文(2065)

文章存档

2012年(2)

2011年(19)

2010年(1160)

2009年(969)

2008年(153)

分类: LINUX

2010-02-10 11:41:20

linux中的sort命令

sort命令的功能是对文件中的各行进行排序。sort命令有许多非常实用的选项,这些选项最初是用来对数据库格式的文件内容进行各种排序操作的。实际上,sort命令可以被认为是一个非常强大的数据管理工具,用来管理内容类似数据库记录的文件。

PS:管理其结构类似于数据库记录的文本是非常有效的一个工具了!可以快速对其进行排序输出的

Sort命令将逐行对文件中的内容进行排序,如果两行的首字符相同,该命令将继续比较这两行的下一字符,如果还相同,将继续进行比较。

PS:这个命令是以行为单位的。一行一行进行匹配比较输出!而且在一个行中又是以第一个字符开始进行比较输出的。第一个字符完了之后再比较第二个字符这样逐一输出来的!

sort [选项] 文件

说明:sort命令对指定文件中所有的行进行排序,并将结果显示在标准输出上。如不指定输入文件或使用“- ”,则表示排序内容来自标准输入。

改变缺省设置的选项主要有:

- m 若给定文件已排好序,合并文件。

- c 检查给定文件是否已排好序,如果它们没有都排好序,则打印一个出错信息,并以状态值1退出。

- u 对排序后认为相同的行只留其中一行。

- o 输出文件 将排序输出写到输出文件中而不是标准输出,如果输出文件是输入文件之一,sort先将该文件的内容写入一个临时文件,然后再排序和写输出结果。

改变缺省排序规则的选项主要有:

- d 按字典顺序排序,比较时仅字母、数字、空格和制表符有意义。

- f 将小写字母与大写字母同等对待。

- I 忽略非打印字符。

- M 作为月份比较:“JAN”<“FEB”

- r 按逆序输出排序结果。

posl - pos2 指定一个或几个字段作为排序关键字,字段位置从posl开始,到pos2为止(包括posl,不包括pos2)。如不指定pos2,则关键字为从posl到行尾。字段和字符的位置从0开始。

- b 在每行中寻找排序关键字时忽略前导的空白(空格和制表符)。

- t separator 指定字符separator作为字段分隔符。

 

示例:

sort -r grade.txt

 

 

 

 

 

命令有几分相




补充与完善

sort汉字排序

/home/lee#echo $str
的见上我人欧怕我下风那把长下在懊上的风个还见看 #未排序前
/home/lee#echo $str|sed 's/./&\n/g'|LC_ALL=C sort|tr '\n' ' '|tr -d ' ';echo
懊把长的的风风个还见见看那欧怕人上上我我下下在    #按照拼音的顺序排列的

 
加上export LANG=zh_cn
然后再sort -u 也是可以的
阅读(735) | 评论(0) | 转发(0) |
0

上一篇:linux tee 命令详解

下一篇:常上的站点

给主人留下些什么吧!~~