Shell编程之正则表达式(四)
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,在 Linux 系统中,常用的文件排序工具有三种:sort、uniq、wc。本篇文章将介绍前两种工具的用法。sort 工具sort 是一个以行为单位对文件内容进行排序的工具,也可以根据不同的数据类型来
千家信息网最后更新 2025年12月03日Shell编程之正则表达式(四)
在 Linux 系统中,常用的文件排序工具有三种:sort、uniq、wc。本篇文章将介绍前两种工具的用法。
sort 工具
sort是一个以行为单位对文件内容进行排序的工具,也可以根据不同的数据类型来排序。例如数据和字符的牌局就不一样。sort命令的语法为sort [选项] 参数- 常用选项
| 选项 | 说明 |
|---|---|
-f | 忽略大小写 |
-b | 忽略每行前面的空格 |
-M | 按月份进行排序 |
-n | 按照数字进行排序 |
-r | 反向排序 |
-u | 等同于uniq,表示形同的数据仅显示一行 |
-t | 指定分隔符,默认使用[Tab]键分隔 |
-o <输出文件> | 将排序后的结果转存至指定文件 |
-k | 指定排序区域 |
应用示例
[root@localhost opt]# sort /etc/passwd //将/etc/passwd 文件中的账号进行排序abrt:x:173:173::/etc/abrt:/sbin/nologinadm:x:3:4:adm:/var/adm:/sbin/nologinapache:x:48:48:Apache:/usr/share/httpd:/sbin/nologinavahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologinbin:x:1:1:bin:/bin:/sbin/nologinchrony:x:995:991::/var/lib/chrony:/sbin/nologincolord:x:997:995:User for colord:/var/lib/colord:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologindbus:x:81:81:System message bus:/:/sbin/nolog[root@localhost opt]# sort -t ':' -rk 3 /etc/passwd //将/etc/passwd 文件中第三列进行反向排序nobody:x:99:99:Nobody:/:/sbin/nologinpolkitd:x:999:998:User for polkitd:/:/sbin/nologinlibstoragemgmt:x:998:996:daemon account for libstoragemgmt:/var/run/lsm:/sbin/nologincolord:x:997:995:User for colord:/var/lib/colord:/sbin/nologinsaslauth:x:996:76:Saslauthd user:/run/saslauthd:/sbin/nologinchrony:x:995:991::/var/lib/chrony:/sbin/nologingeoclue:x:994:989:User for geoclue:/var/lib/geoclue:/sbin/nologinsetroubleshoot:x:993:988::/var/lib/setroubleshoot:/sbin/nologinsssd:x:992:987:User for sssd:/:/sbin/nologingnome-initial-setup:x:991:986::/run/gnome-initial-setup/:/sbin/nologinpostfix:x:89:89::/var/spool/postfix:/sbin/nologindbus:x:81:81:System message bus:/:/sbin/nologinmail:x:8:12:mail:/var/spool/mail:/sbin/nologinradvd:x:75:75:radvd user:/:/sbin/nologin//将/etc/passwd 文件中第三列进行排序,并将输出内容保存至abc.txt 文件中。[root@localhost opt]# sort -t ':' -k 3 /etc/passwd -o abc.txt[root@localhost opt]# cat abc.txt root:x:0:0:root:/root:/bin/bashsun:x:1000:1000:sun:/home/sun:/bin/bashqemu:x:107:107:qemu user:/:/sbin/nologinoperator:x:11:0:operator:/root:/sbin/nologinusbmuxd:x:113:113:usbmuxd user:/:/sbin/nologinbin:x:1:1:bin:/bin:/sbin/nologingames:x:12:100:games:/usr/games:/sbin/nologinftp:x:14:50:FTP User:/var/ftp:/sbin/nologinpulse:x:171:171:PulseAudio System Daemon:/var/run/pulse:/sbin/nologinrtkit:x:172:172:RealtimeKit:/proc:/sbin/nologinabrt:x:173:173::/etc/abrt:/sbin/nologinsystemd-network:x:192:192:systemd Network Management:/:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologinnamed:x:25:25:Named:/var/named:/sbin/nologinrpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologinrpc:x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologinuniq 工具
uniq工具在Linux系统中通常与sort命令结合使用,用于报告或者忽略文件中的重复行命令语法格式
uniq [选项] 参数- 常用选项
| 选项 | 说明 |
|---|---|
-c | 进行计数 |
-d | 仅显示重复行 |
-u | 仅显示出现一次的行 |
应用示例
[root@localhost opt]# vim test.txt //编辑test.txt测试文件Linux 10Linux 20Linux 30Linux 30Linux 30CentOS 6.5CentOS 6.5 CentOS 6.5CentOS 7.3CentOS 7.3CentOS 7.3~ ~ :wq //保存退出[root@localhost opt]# uniq test.txt //删除 testfile 文件中的重复行Linux 10Linux 20Linux 30CentOS 6.5CentOS 7.3[root@localhost opt]# uniq -c test.txt //删除 test.txt文件中的重复行,并在行首显示该行重复出现的次数 1 Linux 10 1 Linux 20 3 Linux 30 3 CentOS 6.5 3 CentOS 7.3[root@localhost opt]# uniq -d test.txt 查找 test.txt 文件中的重复行Linux 30CentOS 6.5CentOS 7.3
文件
排序
工具
命令
常用
数据
内容
参数
示例
系统
语法
应用
不同
在行
一行
分隔符
区域
单位
大小
字符
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
计算机网络技术中职课程
ice服务器哪个好
系统数据库无法登录怎么办
grafana回写数据库
互联网科技公司的股权结构
tornado 服务器
手机编程软件开发
网络安全隐患整改措施概述
如何找网上网络技术人才
2008搭建邮件服务器
天津公安局网络安全总队长
软件开发笔试问题
数据库字段值为0时就为空
对网络技术专业的认识
蚂蚁金服公安部数据库
dns服务器提供
ssd服务器数据安全
文件上传服务器共享
6月1日网络安全法实施
网吧客户机怎么上传文件到服务器
中国电子信息产业发展网网络安全
软件开发人员的外号
xp系统数据库怎么设置
手机编程软件开发
机械行业转行软件开发知乎
软件开发新方法
数据库实例名称大小写
战神引擎芒果数据库端口不对
广电网络安全竞赛题库
2018全球数据库软件市场