котен дубликат1.txt | сортиране -k 2 | uniq -f 1
Ако се чудите с флага „сортиране“, това е да кажете на „сортиране“ да сортира въз основа на втората колона.
Показване на всички редове, но отделни дубликати
Според всички примери, споменати по-горе, „uniq“ запазва само първото появяване на дублираното съдържание и премахва останалото. Какво ще кажете за премахване на дублираното съдържание изобщо? Да, използвайки флага „-u“, можем да принудим „uniq“ да запази само неповтарящите се редове.
котен дубликат.txt | вид
котен дубликат.txt | сортиране | uniq -u
Хм, вече няма много дубликати ..
Пропуснете началните знаци
Обсъдихме как да кажем на „uniq“ да си свърши работата за други области, нали? Време е да започнете проверката след няколко първоначални знака. За тази цел флагът „-s“, придружен от броя на знаците, ще каже на „uniq“ да свърши работата.
котен дубликат1.txt | сортиране -k 2 | uniq -s 2
Подобно е на примера, когато „uniq“ трябваше да изпълни задачата си само във второто поле. Нека да видим друг пример с този трик.
котен дубликат.txt | сортиране | uniq-и 5
Проверете САМО началните знаци
Подобно на начина, по който казахме на „uniq“ да пропусне първите няколко знака, също така е възможно да кажем на „uniq“ просто да ограничи проверката в рамките на първите няколко знака. За целта има специален флаг „-w“.
котен дубликат.txt | сортиране | uniq -w 5
Тази команда казва на „uniq“ да извърши проверка на уникалността в рамките на първите 5 знака.
Нека да видим друг пример за тази команда.
котен дубликат1.txt | сортиране | uniq -w 5
Той унищожава всички останали случаи на „дублиращи се“ записи, защото е направил проверката на уникалността на част „dupli“.
Нечувствителност към регистъра
Когато проверява за уникалност, “uniq” проверява и за регистъра на символите. В някои ситуации чувствителността към регистъра няма значение, така че можем да използваме знамето „-i“, за да направим „uniq“ нечувствителен към регистъра.
Тук ви представям демонстрационния файл.
Някои наистина умно дублиране със смес от главни и малки букви, нали? Време е да призовем силата на "uniq" да прочисти бъркотията!
котен дубликат1.txt | сортиране | uniq -i
Пожелание изпълнено!
NULL-прекратен изход
Поведението по подразбиране на “uniq” е да завърши изхода с нов ред. Изходът обаче може да бъде прекратен и с NULL. Това е доста полезно, ако ще го използвате в скриптове. Тук флагът „-z“ е това, което върши работата.
котен дубликат.txt | сортиране | uniq -z
Комбиниране на множество знамена
Научихме няколко знамена на „uniq“, нали? Какво ще кажете да ги комбинирате заедно?
Например комбинирам нечувствителността към случая и броя на повторенията заедно.
Ако някога планирате да смесите няколко знамена заедно, отначало се уверете, че те работят по правилния начин. Понякога нещата просто не работят както трябва.
Финални мисли
“Uniq” е доста уникален инструмент, който Linux предлага. С толкова много мощни функции, той може да бъде полезен по много начини. За списъка на всички флагове и техните обяснения се консултирайте с човека и информационните страници на “uniq”.
човек уник
информация uniq
Наслади се!