本文主要是介绍Shell中uniq命令的用法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、uniq命令的作用
报告或忽略文件中的重复行,一般与sort命令结合使用
二、使用格式
语法:uniq (选项) (参数)
选项列表:
- -c或–count:在每列旁边显示该行重复出现的次数
- -d或–repeated:仅显示重复出现的行列
- -f<栏位>或–skip-fields=<栏位>:忽略比较指定的栏位
- -s<字符位置>或–skip-chars=<字符位置>:忽略比较指定的字符
- -u或–unique:仅显示出一次的行列
- -w<字符位置>或–check-chars=<字符位置>:指定要比较的字符
参数:
- 输入文件:指定要去除重复行的文件。如果不指定此项,则从标准读取数据
- 输出文件:指定要去除重复行后的内容要写入的输出文件。如果不指定此选项,则将内容显示到标准输出设备(显示终端)
三、举例
初始数据:text.txt
abcdefg
abcdefg
higklmn
opqrstu
abcdscd
vwxyz
3.1 获得去重后的行数据
uniq text.txt
输出结果:
abcdefg
higklmn
opqrstu
abcdscd
vwxyz
3.2 排序➕去重
方法1
sort text.txt | uniq
方法2:
sort -u text.txt
输出结果:
abcdefg
abcdscd
higklmn
opqrstu
vwxyz
3.3 只获取并显示不重复的行数据
uniq -u text.txt
输出结果:不显示abcdefg
这种重复的行数据
higklmn
opqrstu
abcdscd
vwxyz
3.4 排序+显示不重复的行
sort text.txt | uniq -u
输出结果:
abcdscd
higklmn
opqrstu
vwxyz
3.5 统计各行在文件中出现的次数
sort text.txt | uniq -c
输出结果:
2 abcdefg1 abcdscd1 higklmn1 opqrstu1 vwxyz
3.6 在文件中找出重复的行
sort text.txt | uniq -d
输出结果:
abcdefg
这篇关于Shell中uniq命令的用法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!