- Linux管理员教程
- 首页
- CentOS概述
- 基本的CentOS Linux命令
- 文件/文件夹管理
- 用户管理
- 配额管理
- Systemd服务启动和停止
- 使用systemctl进行资源管理
- 使用cgroups进行资源管理
- 进程管理
- 防火墙设置
- 在CentOS Linux中配置PHP
- 使用CentOS Linux设置Python
- 在CentOS Linux中配置Ruby
- 为CentOS Linux设置Perl
- 安装和配置Open LDAP
- 创建SSL证书
- 安装Apache Web服务器CentOS 7
- 在CentOS 7上设置MySQL
- 设置Postfix MTA和IMAP/POP3
- 安装匿名FTP
- 远程管理
- CentOS中的流量监控
- 日志管理
- 备份和恢复
- 系统更新
- Shell脚本
- 软件包管理
- 卷管理
- Linux管理员有用资源
- Linux管理员 - 快速指南
- Linux管理员 - 有用资源
- Linux管理员 - 讨论
Linux管理员 - uniq命令
以下是uniq常用的开关。此命令报告或忽略重复的行。
开关 | 动作 |
---|---|
-c | 以出现次数作为行前缀 |
-i | 忽略大小写 |
-u | 仅打印唯一行 |
-w | 检查字符,比较不超过n个字符 |
-s | 跳过字符,避免比较前两个N个字符 |
-f | 跳过字段,避免比较前N个字段 |
-D | 打印所有重复行组 |
我们之前在一些例子中简要地使用了uniq。uniq命令允许我们根据匹配项过滤文件的行。例如,假设我们在销售部门又获得了一位名叫Matt Davis的员工。三天后,会计部门需要销售参与奖下一季度的新的估算。我们可以使用以下命令检查员工列表。
[root@centosLocal centos]# cat ./Documents/names.txt | wc -l 30 [root@centosLocal centos]#
我们告诉他们销售部门有30人参加年度参与奖。会计部门很可能会注意到差异:他们只需要制作29个独特的奖牌。让我们再试一次 -
[root@centosLocal Documents]# cut -d ":" -f 1,2 ./names.txt | sort | uniq | wc -l 29 [root@centosLocal Documents]#
现在我们有足够的信息来提供给会计部门一个准确的销售部门独特参与奖的数量(他们不需要支付制作两个唯一奖牌的费用。只需为“Matt Davis”复制第二个)。
注意 - 在查找唯一行时,我们总是希望使用sort,将其输出传递给uniq。如果非唯一条目不在行内顺序,则它们将不会被视为重复行。
要快速生成一份报告,让我们知道有多少销售人员共用一个办公室 -
[root@centosLocal Documents]# sort -t":" -k3 ./names.txt | cut -d ":" -f3 | uniq -c | sort -n 1 100 1 108 1 201 1 203 1 204 1 205 1 206 1 301 1 304 1 404 1 405 1 501 1 504 1 602 1 603 1 608 1 702 1 902 2 101 2 102 2 305 2 901 2 903 3 403 [root@centosLocal Documents]#
basic_centos_linux_commands.htm
广告