Linux uniq命令详解
uniq常见命令参数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | 用法:uniq [选项]... [文件] 从输入文件或者标准输入中筛选相邻的匹配行并写入到输出文件或标准输出。 不附加任何选项时匹配行将在首次出现处被合并。 长选项必须使用的参数对于短选项时也是必需使用的。 -c, --count 在每行前加上表示相应行目出现次数的前缀编号 -d, --repeated 只输出重复的行 -D, --all-repeated[=delimit-method 显示所有重复的行 delimit-method={none( default ),prepend,separate} 以空行为界限 -f, --skip-fields=N 比较时跳过前N 列 -i, --ignore- case 在比较的时候不区分大小写 -s, --skip-chars=N 比较时跳过前N 个字符 -u, --unique 只显示唯一的行 -z, --zero-terminated 使用 '\0' 作为行结束符,而不是新换行 -w, --check-chars=N 对每行第N 个字符以后的内容不作对照 --help 显示此帮助信息并退出 --version 显示版本信息并退出 若域中为先空字符(通常包括空格以及制表符),然后非空字符,域中字符前的空字符将被跳过。 提示:uniq 不会检查重复的行,除非它们是相邻的行。 如果您想先对输入排序,使用没有uniq 的 "sort -u" 。 |
uniq常见命令展示
统计行数
1 | last| awk '{S[$3]++}{for(a in S){print a}}' |sort |uniq -c| sort -rn |
![image image](https://images2018.cnblogs.com/blog/519608/201808/519608-20180831080827600-227370852.png)
只显示重复的内容
1 | last| awk '{S[$3]++}{for(a in S){print a}}' |sort |uniq -d |
只显示出现一次的行
1 | cat last.txt |uniq -u |
![](https://img2022.cnblogs.com/blog/519608/202206/519608-20220611070729801-558232165.png)
1 | <a style= "font-family: "PingFang SC", "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 14px" href= "https://images2018.cnblogs.com/blog/519608/201808/519608-20180831080828707-2132085844.png" ><img src= "https://images2018.cnblogs.com/blog/519608/201808/519608-20180831080829100-2145521661.png" alt= "image" width= "855" height= "158" title= "image" border= "0" style= "background-image: none; margin: 0; padding-left: 0; padding-right: 0; display: inline; padding-top: 0; border: 0" ></a> |
作者:小a玖拾柒
-------------------------------------------
个性签名: 所有的事情到最後都是好的,如果不好,那說明事情還沒有到最後~
本文版权归作者【小a玖拾柒】和【博客园】共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步