星期二, 五月 26, 2009

sort学习笔记

sort默认是把整行当作一串字符,以首字符排序

------------------------

不指明的sort是对整行的排序: 

xyb 0$ sort a 

a 9 t 

c 2 f 

d 4 x 

 

Pasted from <http://www.unixresources.net/linux/clf/vrml/archive/00/00/34/71/347190.html>

------------------------

 

 

 

Sort -nk 5

以第5列进行排序

-n表示numberic排序

-k表示位置??

 

-r  reverse 降序排列

 

+1 对第二列排序,如:(字段从0开始数,第一字段是0

-----------------------------------------

按数字顺序排序第二个字段: 

xyb 0$ sort -n +1 a 

c 2 f 

d 4 x 

a 9 t 

 

Pasted from <http://www.unixresources.net/linux/clf/vrml/archive/00/00/34/71/347190.html>

-------------------------------------------

 

 

两个字段排序:

-------------------------------------------

先按第二个、不按第三个字段排序: (这个解释估计错了,应该是第二字段升序,第三字段降序)

xyb 0$ sort +1 -2 a 

c 2 f 

d 4 x 

a 9 t 

d 9 c 

+POS1 [-POS2]属于比较老的用法,现在gnu sort里推荐使用-k POS1[,POS2] 

表示排序关键字从POS1开始,到POS2中止。详细信息参考man sortinfo sort

Pasted from <http://www.unixresources.net/linux/clf/vrml/archive/00/00/34/71/347190.html>

-------------------------------------------

 

 

-t 指定分隔符

-------------------------------------------

xyb 0$ sed 's/ /$/g' a | sort -t$ -n +1 

c$2$f 

d$4$x 

a$9$t 

 

Pasted from <http://www.unixresources.net/linux/clf/vrml/archive/00/00/34/71/347190.html>

-------------------------------------------

没有评论: