linux 类型排序,Linux命令之排序命令sort使用实例

名称:sort

位置:/usr/bin/sort

权限:所有用户

用法: sort [OPTION]... [FILE]...

sort [OPTION]... --files0-from=F

选项:

-b      --ignore-leading-blanks  忽略最前面的空格

-f       --ignore-case    fold lower case to upper case characters 忽略字母的大小写

-M     --month-sort   compare (unknown) < `JAN' < ... < `DEC'  以月份的名字来排序

-n      --numeric-sort   compare according to string numerical value  以纯数字排序 (默认以文本类型排序)

复制代码代码如下:

$ cat a

11

32

5

1

4

3

$ sort a

1

11

3

32

4

5

$ sort -n a

1

3

4

5

11

32

-u --unique 相同的数据中,仅出现一行

$ cat a

1

3

5

1

3

$ sort -u a

1

3

5

-t       --field-separator=SEP  use SEP instead of non-blank to blank transition 指定分隔符,默认以TAB为分隔符

-k      --key=POS1[,POS2]     start a key at POS1 (origin 1), end it at POS2 (default end of line).  See POS syntax below

指定排序的区间

以冒号":"作为分隔符的第一个字段排序

复制代码代码如下:

head /etc/passwd

root:x:0:0:root:/root:/bin/bash

daemon:x:1:1:daemon:/usr/sbin:/bin/sh

bin:x:2:2:bin:/bin:/bin/sh

sys:x:3:3:sys:/dev:/bin/sh

sync:x:4:65534:sync:/bin:/bin/sync

games:x:5:60:games:/usr/games:/bin/sh

man:x:6:12:man:/var/cache/man:/bin/sh

lp:x:7:7:lp:/var/spool/lpd:/bin/sh

mail:x:8:8:mail:/var/mail:/bin/sh

news:x:9:9:news:/var/spool/news:/bin/sh

$ head /etc/passwd| sort -t ":" -k 1

bin:x:2:2:bin:/bin:/bin/sh

daemon:x:1:1:daemon:/usr/sbin:/bin/sh

games:x:5:60:games:/usr/games:/bin/sh

lp:x:7:7:lp:/var/spool/lpd:/bin/sh

mail:x:8:8:mail:/var/mail:/bin/sh

man:x:6:12:man:/var/cache/man:/bin/sh

news:x:9:9:news:/var/spool/news:/bin/sh

root:x:0:0:root:/root:/bin/bash

sync:x:4:65534:sync:/bin:/bin/sync

sys:x:3:3:sys:/dev:/bin/sh

以下这个例子可以看出-n的重要性了

$ cat a

pa:11:a

sa:32:c

app:5:b

stort:1:d

pear:4:aa

hello:3:f

$ cat a |sort -t ":" -k 2

pa:11:a

stort:1:d

sa:32:c

hello:3:f

pear:4:aa

app:5:b

$ cat a |sort -t ":" -k 2 -n

stort:1:d

hello:3:f

pear:4:aa

app:5:b

pa:11:a

sa:32:c

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值