katt duplikat1.txt | sortera -k 2 | uniq -f 1
Om du undrar med "sortera" -flaggan är det att säga till "sortera" att sortera baserat på den andra kolumnen.
Visa alla rader men separata dubbletter
Enligt alla exemplen som nämns ovan håller "uniq" bara den första förekomsten av det duplicerade innehållet och tar bort resten. Vad sägs om att ta bort det dubbla innehållet helt och hållet? Ja, med flaggan "-u" kan vi tvinga "uniq" att bara hålla de icke-repetitiva linjerna.
kattdublik.txt | sortera
kattdublik.txt | sortera | uniq -u
Hmm, för många dubbletter är nu borta ..
Hoppa över inledande tecken
Vi diskuterade hur man säger "uniq" att göra sitt jobb för andra områden, eller hur? Det är dags att starta kontrollen efter ett antal initialtecken. För detta ändamål kommer "-s" -flaggan tillsammans med antalet tecken att säga "uniq" att göra jobbet.
katt duplikat1.txt | sortera -k 2 | uniq -s 2
Det liknar exemplet där “uniq” bara skulle göra sin uppgift i det andra fältet. Låt oss se ett annat exempel med detta trick.
kattdublik.txt | sortera | uniq -s 5
Kontrollera ENDAST initialtecken
Precis som det sätt vi sa till "uniq" att hoppa över första partecken, är det också möjligt att säga till "uniq" att bara begränsa kontrollen inom de första partecknen. Det finns en dedikerad “-w” -flagga för detta ändamål.
kattdublik.txt | sortera | uniq -w 5
Detta kommando säger att "uniq" ska utföra unikhetskontroll inom de fem första tecknen.
Låt oss se ett annat exempel på detta kommando.
katt duplikat1.txt | sortera | uniq -w 5
Det utplånar alla andra instanser av "duplicera" poster eftersom det gjorde unikt kontroll på "dupli" del.
Fallkänslighet
När du kontrollerar om det är unikt, kontrollerar "uniq" även om det finns tecken på fallet. I vissa situationer spelar inte skiftlägeskänslighet någon roll, så vi kan använda flaggan "-i" för att göra "uniq" skiftlägeskänslig.
Här presenterar jag dig demo-filen.
Något riktigt smart duplicering med en blandning av stora och små bokstäver, eller hur? Det är dags att påkalla styrkan i "uniq" för att rensa röran!
katt duplikat1.txt | sortera | uniq -i
Önskan beviljad!
NULL-avslutad produktion
Standardbeteendet för "uniq" är att avsluta utdata med en ny linje. Emellertid kan produktionen också avslutas med en NULL. Det är ganska användbart om du ska använda det i skript. Här är flaggan “-z” vad som gör jobbet.
kattdublik.txt | sortera | uniq -z
Kombinera flera flaggor
Vi lärde oss ett antal flaggor av "uniq", höger? Vad sägs om att kombinera dem tillsammans?
Jag kombinerar till exempel fallkänsligheten och antalet repetitioner tillsammans.
Om du någonsin planerar att blanda flera flaggor tillsammans, se till att de fungerar på rätt sätt tillsammans. Ibland fungerar saker inte som de borde.
Slutgiltiga tankar
“Uniq” är ett helt unikt verktyg som Linux erbjuder. Med så mycket kraftfulla funktioner kan det vara användbart på många sätt. För en lista över alla flaggor och deras förklaringar, se man- och infosidorna för “uniq”.
man uniq
info uniq
Njut av!