当前位置: 首页 > news >正文

免费做调查问卷的网站个人外贸网站制作

免费做调查问卷的网站,个人外贸网站制作,网站域名和空间,跨境电商网站怎么做一、前言在 Linux/Unix 系统中,uniq 是一个非常实用的文本处理命令,用于对重复的行进行统计、去重和筛选。它通常与 sort 搭配使用,以实现高效的文本数据清洗与统计分析。无论是做日志分析、访问频率统计,还是编写自动化脚本&…

一、前言

在 Linux/Unix 系统中,uniq 是一个非常实用的文本处理命令,用于对重复的行进行统计、去重和筛选。它通常与 sort 搭配使用,以实现高效的文本数据清洗与统计分析。

无论是做日志分析、访问频率统计,还是编写自动化脚本,uniq 都是一个不可或缺的工具。

本文将带你全面了解 uniq 工具的使用方式,包括:

uniq 的基本语法与常用参数
✅ 如何统计重复行、去重输出、查找唯一行
uniq 在 Shell 脚本中的实战应用
✅ 与其他文本处理命令的联合使用
✅ 实际开发中的常见问题与优化建议

并通过完整的代码示例帮助你快速上手并熟练掌握 uniq 的各种高级用法。

二、什么是 uniq?

uniq 是一个用于 过滤或报告重复行 的命令行工具。它默认只会比较 相邻的行,因此常与 sort 结合使用。

✅ 典型用途包括:

场景示例
日志分析提取唯一的 IP 地址
数据统计统计某字段出现次数
自动化脚本快速去重输出结果
访问监控查找高频访问用户
文件清理去除重复行

三、uniq 基础语法

uniq [选项] [输入文件] [输出文件]

✅ 常用选项说明:

参数描述
-c显示每行出现的次数
-d只显示重复的行(每组只输出一次)
-u只显示唯一的行
-i忽略大小写比较
-f N忽略前 N 个字段再比较
-s N忽略前 N 个字符再比较
-w N对每行前 N 个字符进行比较

四、uniq 使用示例

✅ 示例1:基础去重输出

echo -e "apple\nbanana\napple\norange" > fruits.txt
sort fruits.txt | uniq

输出:

apple
banana
orange

⚠️ 注意:uniq 只会合并相邻的相同行,所以必须先排序!

✅ 示例2:统计每行出现次数(-c

sort fruits.txt | uniq -c

输出:

      2 apple1 banana1 orange

✅ 示例3:只显示重复行(-d

sort fruits.txt | uniq -d

输出:

apple

✅ 示例4:只显示唯一行(-u

sort fruits.txt | uniq -u

输出:

banana
orange

✅ 示例5:忽略大小写比较(-i

echo -e "Apple\napple\nBANANA" > mixed.txt
sort -f mixed.txt | uniq -i

输出:

Apple
BANANA

五、uniq 在 Shell 脚本中的应用

✅ 示例1:统计访问最多的 IP 地址

cut -d' ' -f1 access.log | sort | uniq -c | sort -nr | head -n 10

输出类似:

123 192.168.1.100
98 192.168.1.101
...

✅ 示例2:提取配置文件中的唯一变量名

grep '=' config.env | cut -d'=' -f1 | sort | uniq

输出所有变量名并去重。

✅ 示例3:查找重复的用户名(从 /etc/passwd

cut -d':' -f1 /etc/passwd | sort | uniq -d

输出重复的用户名(如果有的话)。

六、uniq 与其他命令的配合使用

✅ 示例1:统计访问最多的 URL(uniq + cut + sort

cut -d'"' -f2 access.log | cut -d' ' -f2 | sort | uniq -c | sort -nr | head -n 10

输出访问最多的前 10 个 URL。

✅ 示例2:找出未被访问的页面(uniq + grep

comm -23 <(sort all_pages.txt) <(sort visited_pages.txt)

输出在 all_pages.txt 中但不在 visited_pages.txt 中的页面。

✅ 示例3:结合 awk 过滤特定数量的行

sort data.txt | uniq -c | awk '$1 >= 3'

输出出现次数大于等于 3 的行。

七、uniq 使用技巧总结

技巧说明
✅ 总是先排序再使用 uniq否则无法识别非连续重复行
✅ 使用 -c 统计出现次数适用于访问统计、频率分析
✅ 使用 -d 提取重复项快速定位异常数据
✅ 使用 -u 提取唯一项快速获取不重复数据
✅ 使用 -i 忽略大小写更灵活匹配关键词
✅ 结合 awk 过滤特定频率的数据实现复杂逻辑
✅ 使用 comm 找出差异对比两个文件内容

八、uniq 实战案例汇总

✅ 案例1:从 /etc/passwd 提取唯一用户名

cut -d':' -f1 /etc/passwd | sort | uniq

✅ 案例2:统计访问最多的 IP 并排序

cut -d' ' -f1 access.log | sort | uniq -c | sort -nr | head -n 10

✅ 案例3:找出两个文件的交集

sort file1.txt file2.txt | uniq -d

九、常见问题与解决方法

问题原因解决方案
无法识别非连续重复行未使用 sort 排序添加 sort 再调用 uniq
去重无效使用了错误参数检查是否使用了 -d 或 -u
输出乱码编码不一致使用 iconv 或设置 LANG=C
忽略字段错误参数 -f 设置不当检查字段索引是否正确
统计结果异常输入数据格式混乱使用 tr 或 awk 预处理

十、总结对比表:uniq 常用参数一览

参数功能
-c显示每行出现次数
-d只显示重复行
-u只显示唯一行
-i忽略大小写
-f忽略前 N 个字段
-s忽略前 N 个字符
-w对每行前 N 字符进行比较

十一、结语

感谢您的阅读!如果你有任何疑问或想要分享的经验,请在评论区留言交流!

http://www.dtcms.com/a/508871.html

相关文章:

  • Kafka面试精讲 Day 25:Kafka与大数据生态集成
  • 中小学网站建设规范培训网站官网
  • 开鲁网站seo转接如何建设一个收费的影视图文网站
  • 自己做的网站打不开了h5网站架设
  • 天翼云OS2.0.1快速查看CPU架构
  • 5.类和对象(下)
  • 树莓派控制板载LED闪烁
  • 上海专业网站建设平台深圳罗湖高端网站建设
  • 怎么让程序更高效地连起来?
  • 网站 商城 app 建设银川网站建设nx110
  • 泉州建设网站公司网站建设新闻 常识
  • 从零搭建本地化 RAG 聊天助手:从环境配置到核心逻辑全解析
  • 福建建设局网站旅游网站建设代码
  • 云南城市建设职业学院成绩查询网站将网站做成logo怎么做
  • svn使用和idea集成
  • 汕头房产网站建设苏州怎么做网站
  • 基于springboot的知识管理系统开发与设计
  • ORM(Tortoise-ORM)操作
  • 深圳外包网站网站域名切换
  • 空间代码网站百度认证是什么
  • 电子商务网站建设与管理的书wordpress 自定义栏目 删除
  • 搜狗站长推送工具2003访问网站提示输入用户名密码
  • wordpress二维码动态图片大小短视频seo什么意思
  • 免费的网站域名申请中国建设银行陕西分行官方网站
  • 渗透测试项目总结
  • 网站如何接广告赚钱网页设计师简历模板
  • 爱站挖词网站建设市场推广招聘
  • 深圳网站建设品牌策划软文写作的三个要素
  • 【spring如何扫描一个路径下被注解修饰的类】
  • Cuda reduce算子实现与优化