一.sort命令:排序
常用参数:
sort
-n ##纯数字排序
-r ##倒序
-u ##去掉重复数字
-o ##输出到指定文件中
-t ##指定分隔符
-k ##指定要排序的列
[root@server ~]# sort westos
1
12
123
2
3
32
5
51
6
7
[root@server ~]# sort -n westos
1
2
3
5
6
7
12
32
51
123
[root@server ~]# sort -u westos
1
12
123
2
3
32
5
51
6
7
[root@server ~]# sort -t : -k 2 westos
2:0
12:10
2:12
3:2
51:20
5:21
123:22
32:31
5:4
6:4
1:5
51:55
123:66
7:79
[root@server ~]# sort -nt : -k 2 westos ##以:为分隔符的第二列的纯数字大小来排序
2:0
3:2
5:4
6:4
1:5
12:10
2:12
51:20
5:21
123:22
32:31
51:55
123:66
7:79
二.uniq命令:对重复字符处理
常用参数:
uniq
-u ##显示唯一的行
-d ##显示重复的行
-c ##每行显示一次并统计重复次数
[root@server ~]# sort -n westos | uniq -c
1 0
1 1
2 2
1 4
1 6
1 9
2 10
1 20
1 22
2 31
1 55
[root@server ~]# sort -n westos | uniq -d
2
10
31
[root@server ~]# sort -n westos | uniq -u
0
1
4
6
9
20
22
55
三.练习
[root@localhost mnt]# ll /tmp
total 0
drwx------. 3 root root 16 12月 26 22:08 systemd-private-KkEfrN
drwx------. 3 root root 16 12月 29 02:13 systemd-private-m3F7xH
drwx------. 3 root root 16 12月 29 02:13 systemd-private-swBwAS
drwx------. 3 root root 16 12月 26 22:08 systemd-private-Swh7vK
第一种方法:
[root@localhost mnt]# ll /tmp | sort -nk 5 | cut -d " " -f 9 | tail -n 1
systemd-private-swBwAS
第二种方法:
[root@localhost mnt]# ls -Sl /tmp | head -2 | cut -d " " -f 9
systemd-private-KkEfrN