shell编程学习之sort

sort

sort用于排序

 

 

1、先看下sort的各个参数

   -b    忽略每行前面开始出的空格字符。
   -c    检查文件是否已经按照顺序排序。
   -d    排序时,处理英文字母、数字及空格字符外,忽略其他的字符。
   -f    排序时,将小写字母视为大写字母。
   -i    排序时,除了040至176之间的ASCII字符外,忽略其他的字符。
   -m    将几个排序好的文件进行合并。
   -M    将前面3个字母依照月份的缩写进行排序。
   -n    依照数值的大小排序。
   -o<输出文件>    将排序后的结果存入指定的文件。
   -r    以相反的顺序来排序。
   -t<分隔字符>    指定排序时所用的栏位分隔字符。
   +<起始栏位>-<结束栏位>    以指定的栏位来排序,范围由起始栏位到结束栏位的前一栏位。
 

 

 

2、按数字排序

-bash-3.2# sort -n |head -n 5 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
 

 

 

3、按相反的顺序来排序

-bash-3.2# cat 1.txt
1
2
3
4
5
6
-bash-3.2# sort -r 1.txt
6
5
4
3
2
1

 

 

4、排序后的结果输入

-bash-3.2# cat 1.txt
1
2
3
4
5
6
-bash-3.2# sort -r 1.txt -o 1.txt
-bash-3.2# cat 1.txt
6
5
4
3
2
1

 

 

5、按列来排序

-bash-3.2# cat 1.txt
1       a
2       b
3       c
4       d
-bash-3.2# sort -k 2 -r 1.txt
4       d
3       c
2       b
1       a

 

 

6、去除相同的行

-bash-3.2# cat 1.txt
1       a
2       b
3       c
4       d
4       d
-bash-3.2# sort -u 1.txt
1       a
2       b
3       c
4       d

 

 

7、间隔符

-bash-3.2# cat 1.txt
1:a:tail
2:b:one
3:c:less
4:d:more
4:d:cat
-bash-3.2# sort -t: -k 2 1.txt
1:a:tail
2:b:one
3:c:less
4:d:cat
4:d:more

 

本文出自 “游造技术博客” 博客,转载请与作者联系!

你可能感兴趣的:(sort命令,sort编程,shell编程学习之sort,sort基础,sort学习)