uniq: Linux-kommando for å finne duplikattekst

Noen ganger er det sannsynlig at du har veldig lange tekstfiler der det er vanskelig å finne visse mønstre eller linjer eller ord som er duplisert, eller kanskje det er en haug med små tekstfiler der du ønsker å matche lettere, og til og med bruke en pipe og matche utdataene til en kommando. Også, uniq er kommandoen hva leter du etter det.

Med uniq kan du se etter overflødig informasjon på en veldig enkel måte. I tillegg vil det også tillate deg å fjerne disse duplikatene hvis du trenger det. Og i denne opplæringen vil du se noen eksempler på kommandoen som du kan finne nyttig. Husk at den er installert som standard i de aller fleste distros, så du slipper å installere pakken...

Vel, først av alt, la oss se et eksempel for å forstå det grunnleggende om uniq-kommandoen og hva den gjør og hva den ikke gjør. Til ejemplo, forestill deg at du lager en tekstfil som heter test.txt, og inne legger du flere gjentatte fraser eller ord, for eksempel å gjenta tre linjer «Hei dette er en test» og bruk deretter uniq med det:

nano prueba.txt

uniq prueba.txt

Vel, i så fall, utgangen av kommandoen blir ganske enkelt:

Salida:

Hola, esto es una prueba

Det vil si, sett en enkelt linje «Hei dette er en test» eliminere de 2 andre som er like. Men pass på, hvis du bruker cat igjen for å se originalen, vil du se at de ikke er fjernet fra filen, den har ganske enkelt fjernet dem fra utdataene:

cat prueba.txt

hvis utgang ville være:

Hola, esto es una prueba

Hola, esto es una prueba

Hola, esto es una prueba

Men uniq-kommandoen har mange flere tilgjengelige alternativer. Det kan for eksempel fortelle deg antall ganger en linje gjentas, som indikerer i begynnelsen av linjen antall repetisjoner. For det:

uniq -c prueba.txt

Du kan også bare skrive ut gjentatte linjer, og ignorer de ikke-gjentatte:

uniq -d prueba.txt

Eller de som ikke er duplisert med -u-alternativet:

uniq -u prueba.txt

Å bruke sakssensitiv og vær sensitiv for store og små bokstaver, kan du bruke -i-alternativet:

uniq -i prueba.txt

Ok, og hvordan kan det gjøres lage en fil med bare de unike linjene, og eliminerer alle duplikatene på en gang. Vel, det er så enkelt som å bruke et rør for å overføre utdataene fra uniq til en ny tekstfil:

uniq prueba.txt > unicas.txt


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: AB Internet Networks 2008 SL
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.