logo

uniq kommando i Linux med exempel

De unik kommando i Linux är ett kommandoradsverktyg som rapporterar eller filtrerar bort de upprepade raderna i en fil. Med enkla ord, unik är verktyget som hjälper till att upptäcka de intilliggande dubblettlinjerna och även tar bort dubblettlinjerna. unik filtrerar bort de intilliggande matchande raderna från indatafilen (som krävs som ett argument) och skriver den filtrerade datan till utdatafilen.

Innehållsförteckning



Syntax för uniq Command

Den grundläggande syntaxen för ` uniq`> kommandot är:

uniq [OPTIONS] [INPUT_FILE [OUTPUT_FILE]]>

Här,

  • `OPTIONS`> : Valfria flaggor som ändrar beteendet för ` uniq`> kommando.
  • `INPUT_FILE`> : Sökvägen till indatafilen som innehåller textdata. Om det inte anges, ` uniq`> läser från standardingången (vanligtvis tangentbordet).
  • `OUTPUT_FILE`> : Sökvägen till utdatafilen där de unika raderna kommer att skrivas. Om det inte anges, ` uniq`> skriver till standardutgången (vanligtvis terminalen).

Vanliga alternativ för uniq> Kommando

Här är några vanliga alternativ som kan användas med ` uniq`> kommando:



alternativ

Beskrivning

-c, –räkna



Prefix rader med antalet förekomster i inmatningen, följt av ett mellanslag.

-d, –upprepad

Endast utdatarader som upprepas i ingången.

-i, –ignore-case

Ignorera skillnader i fall när du jämför linjer.

-f, –hopp-fält=N

Undvik att jämföra de första N fälten i varje rad.

-s, –skip-chars=N

Undvik att jämföra de första N tecknen på varje rad.

-u, -unik

Endast utdatarader som är unika i ingången.

Exempel på användning av ` uniq`> Kommando

Låt oss nu förstå användningen av detta med hjälp av ett exempel. Anta att du har en textfil som heter kt.txt som innehåller upprepade rader som måste utelämnas. Detta kan helt enkelt göras med uniq.

//displaying contents of kt.txt//   $cat kt.txt   I love music. I love music. I love music. I love music of Kartik. I love music of Kartik. Thanks.>

Hur man tar bort dubbletter av rader med kommandot 'uniq'.

För att ta bort dubbletter från ` kt.txt`> , vi kan använda ` uniq`> kommando:

uniq kt.txt>

ta bort dubbletter av linjer

ta bort dubbletter av linjer

Som du kan se att vi bara använde namnet på indatafilen i ovanstående unika exempel och eftersom vi inte använde någon utdatafil för att lagra den producerade utdatan, visade uniq-kommandot den filtrerade utdatan på standardutmatningen med alla dubbletter linjer borttagna.

hur man konverterar från int till sträng i java

Obs: Unik kan inte upptäcka dubblettlinjerna om de inte ligger intill varandra. Innehållet i filen måste därför sorteras innan du använder uniq eller så kan du helt enkelt använda sortera -u istället för ett unikt kommando.

Hur man räknar dubbletter av rader med kommandot 'uniq' i Linux

Den ` -c`> alternativet prefix varje rad med antalet förekomster i inmatningen:

uniq -c kt.txt>
Räknar förekomsten av dubbletter av linjer

Räknar förekomsten av dubbletter av linjer

I det här exemplet visas dess upprepade nummer i början av varje rad

Hur man visar upprepade rader med kommandot 'uniq' i Linux

Den ` -d`> alternativet skriver bara ut dubbla rader:

uniq -d kt.txt>
visa endast dubbletter av rader

visa endast dubbla rader

Hur man visar alla dubbletter av rader med kommandot 'uniq' i Linux

Den ` -D`> alternativet skriver ut alla dubbletter, inte bara en per grupp:

uniq -D kt.txt>
skriver ut alla dubbletter

skriver ut alla dubbletter

Hur man visar unika rader med kommandot 'uniq' i Linux

Den ` -u`> alternativet skriver endast ut unika rader:

uniq -u kt.txt>

skriver bara ut unika linjer

skriver bara ut unika linjer

Hoppa över första N fält ( -f> alternativ) Använder kommandot 'uniq' i Linux

Den ` -f N`> alternativet hoppar över de första N fälten innan linjer jämförs. Användbart för numrerade rader:

uniq -f 2 f1.txt>

//visar innehållet i f1.txt//
1. Jag älskar musik.
2. Jag älskar musik.
3. Jag älskar musik av Kartik.
4. Jag älskar musik av Kartik.

'-s N' alternativ

'-s N' alternativ

I det här exemplet används 2 eftersom vi behövde jämföra linjerna efter numreringen 1,2.. och efter punkter

Hoppa över första N-tecken ( -s> alternativ) Använder kommandot 'uniq' i Linux

Den ` -s N`> alternativet hoppar över de första N tecknen på varje rad:

//visar innehåll i f2.txt//
#%@Jag älskar musik.
^&(Jag älskar musik.
*-!@tack.
#%@!tack.

uniq -s 3 f2.txt>

I det här exemplet filtreras samma rader efter att ha hoppat över 3 tecken.

'-s N' alternativ

'-s N' alternativ

Begränsande jämförelse med First N-tecken ( -w> alternativ) Använder kommandot 'uniq' i Linux

Använder -w alternativet: I likhet med sättet att hoppa över tecken kan vi också be uniq att begränsa jämförelsen till ett visst antal tecken. För detta används kommandoradsalternativet -w.

//visar innehåll i f3.txt//
Hur är det möjligt?
Hur kan det göras?
Hur man använder det?

uniq -w 3 f3.txt>

Eftersom de första 3 tecknen i alla 3 rader är samma, så behandlade uniq alla dessa som dubbletter och gav utdata därefter.

Använder alternativet -w

Använder alternativet -w

Skiftlägeskänslig jämförelse ( -i> alternativ) Använder kommandot 'uniq' i Linux

Den ` -i`> alternativet gör jämförelsen skiftlägesokänslig:

//visar innehållet i f4.txt//
JAG ÄLSKAR MUSIK
jag älskar musik
TACK

uniq f4.txt>

Här behandlas inte rader som dubbletter med enkel användning av uniq

// använder nu -i alternativet//

uniq -i f4.txt>

Nu tas den andra raden bort när -i alternativet används.

jämförelse skiftlägesokänslig

jämförelse skiftlägesokänslig

NULL avslutad utgång ( -z> alternativ) Använder kommandot 'uniq' i Linux

Använder -z alternativet: Som standard är utgången uniq producerar en ny linje avslutad. Men om du vill vill du ha en NULL-terminerad utdata istället (användbart när du hanterar uniq i skript). Detta kan göras möjligt med hjälp av kommandoradsalternativet -z.

Syntax:

uniq -z file-name>

Slutsats

I den här artikeln diskuterade viuniq>kommando i Linux är ett mångsidigt verktyg för att hantera dubbletter av rader i textfiler. Genom att förstå dess olika alternativ kan du effektivt hantera och bearbeta textdata. Experimentera med olika alternativ och exempel för att bemästra användningen avuniq>kommando.

?list=PLqM7alHXFySFc4KtwEZTANgmyJm3NqS_L