shell正则表达式及一些排序命令(sort、uniq、tr)

本文详细介绍了shell中的sort、uniq和tr命令,包括它们的语法格式、常用选项及其实际应用示例。此外,还讲解了基础和扩展正则表达式,以及如何使用正则表达式匹配E-mail地址。
摘要由CSDN通过智能技术生成

shell正则表达式及一些排序命令

一、sort命令

—以行为单位对文件内容进行排序,也可以根据不同的数据类型来排序

语法格式:

sort [选项] 参数
cat file l sort 选项

常用选项:

选项 解释
-f 忽略大小写,默认会将大写字母排在前面
-b 忽略每行前面的空格
-n 按照数字进行排序
-r 反向排序
-u 等同于uniq,表示相同的数据仅显示一行
-t 指定字段分隔符,默认使用[Tab]键分隔
-k 指定排序字段
-o<输出文件> 将排序后的结果转存至指定文件
sort -n testfile2

sort -t ':' -k 3 -n /etc/passwd

du -a l sort -nr -o du.txt

数字

[root@localhost opt]# sort ypy1.txt 
1
100
145
2
233
3
333
333
353
444
45
555
57
666
77
777
787
##什么都不加直接排序会直比较第一个数字的大小进行排序

加了-n后

[root@localhost opt]# sort ypy1.txt -n
1
2
3
45
57
77
100
145
233
333
333
353
444
555
666
777
787
##就会按照数字本身的大小进行默认有小到大排序

在此基础上加-r会倒排序

[root@localhost opt]# sort ypy1.txt -nr
787
777
666
555
444
353
333
333
233
145
100
77
57
45
3
2
1

再在此基础上加-u

[root@localhost opt]# sort ypy1.txt -nru
787
777
666
555
444
353
333
233
145
100
77
57
45
3
2
1
##之前相同的数值会只显示一行
[root@localhost opt]# cat /etc/passwd | sort -t ':' -k3 -k 4 -n
##  查看此目录文件里的内容,用管道符号连接并用sort命令排列-t ':'意思是用冒号当分隔符,-k是指定排序字段最后-n根据数字排序

执行

nobody:x:99:99:Nobody:/:/sbin/nologin
qemu:x:107:107:qemu user:/:/sbin/nologin
usbmuxd:x:113:113:usbmuxd user:/:/sbin/nologin
pulse:x:171:171:PulseAudio System Daemon:/var/run/pulse:/sbin/nologin
rtkit:x:172:172:RealtimeKit:/proc:/sbin/nologin
abrt:x:173:173::/etc/abrt:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
gnome-initial-setup:x:991:986::/run/gnome-initial-setup/:/sbin/nologin
sssd:x:992:987:User for sssd:/:/sbin/nologin
setroubleshoot:x:993:988::/var/lib/setroubleshoot:/sbin/nologin
geoclue:x:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值