uniq用来从一个文本中去除或禁止重复的行;sort的-u选项也可以去除重复行。
命令格式:uniq -u[-d[,-c]] -f input_file output_file
-u:只显示不重复的行
-d:只显示有重复数据的行,每种重复行只显示其中一行
-c:打印每一重复行出现次数
-f:n为数字,前n个域被忽略,不识别-f选项的系统使用-n选项
我们来看下面的例子:
有重复数据的文件week.txt
1 Monday
2 Monday
3 Tuesday
4 Tuesday
5 Wednesday
6 Monday
7 TuesDay
8 Thursday
9 Friday
10 Saturday
11 Sunday
12 Friday
重复的数据有Monday(1,2,6),Tuesday(3,4,7),Friday(9,12)。
查看week.txt文件中,重复的行:
uniq -d week.txt
Monday
Tuesday
注意,这里只显示重复数据中,Monday和Tuesday这两行,但是Friday这个重复行并没显示。
下面查看不重复的行:
uniq -u week.txt
Wednesday
Monday
TuesDay
Thursday
Friday
Saturday
Sunday
Friday
注意,这里面包含了出现2次的Friday,他们不是重复数据吗?
答案:他们确实非重复数据。
我们再看每行重复的次数:
uniq -c week.txt
2 Monday
2 Tuesday
1 Wednesday
1 Monday
1 TuesDay
1 Thursday
1 Friday
1 Saturday
1 Sunday
1 Friday
从这里,我们看到Monday和Tuesday重复了2次,而Friday就出现了一次,不重复。
原来,AIX将连续出现的相同数据认为是重复数据,
而同样的数据(Friday),非连续出现,就不认为重复。
这是区别于DB2数据库中表的重复数据的,DB2数据库表中,
只要相同的数据,连续或者非连续出现多次,则认为重复。
sort也具有去除重复的功能:
sort -u week.txt
Friday
Monday
Saturday
Sunday
Thursday
Tuesday
TuesDay
Wednesday
uniq命令还可以根据域进行去重。
看下面的例子:
pg parts.txt
AK47 GOOD
DS123 GOOD
ER001 GOOD
显示每行的出现次数:
uniq -c parts.txt
1 AK47 GOOD
1 DS123 GOOD
1 ER001 GOOD
按照第二个域进行去除重复:
uniq -f2 parts.txt
AK47 GOOD
AIX下uniq命令简介及使用
转载请注明出处:服务器评测 » AIX下uniq命令简介及使用
相关推荐
- 洛杉矶服务器、AI Ready Solutions、AMD Ryzen、EPYC,最高可享受 25% 的折扣 |ProlimeHost
- 🔴 [英国|德国|保加利亚|马里兰|美国] CINFU – 裸机专用服务器 Intel、AMD 每月 32 欧元起 🔴
- *PLiKhost:廉价且可靠的印度尼西亚 (IIX) 专用服务器 – 雅加达
- Hostlar 专用服务器,土耳其位置,高性能 SSD 服务器
- MechanicWeb:美国/欧盟/英国/亚太地区 – 2024 年黑色星期五!Ryzen 9950X 托管和非托管 | 10 Gbps
- *释放无与伦比的性能和安全性:HostXNow 托管的英国专用服务器 – cPanel
- 🇬🇧 英国专用服务器起价每月 29 美元 – * 伦敦 DC 库存有限 🇬🇧
- USA/NL Dedi : E3 (16GB-32GB RAM) 起价为每月 80 美元 接受 BTC/LTC/USDT