uniq: Linux-kommando til at finde dublet tekst

Nogle gange er det sandsynligt, at du har meget lange tekstfiler, blandt hvilke det er svært at finde bestemte mønstre eller linjer eller ord, der er duplikeret, eller måske er der en masse små tekstfiler, hvor du nemmere vil matche, og endda bruge et rør og matche outputtet af en kommando. Såvel, uniq er kommandoen hvad leder du efter det.

Med uniq kan du se efter overflødige oplysninger på en meget enkel måde. Derudover vil det også give dig mulighed for at fjerne disse dubletter, hvis du har brug for det. Og i denne tutorial vil du se nogle eksempler på kommandoen, som du kan finde nyttig. Husk at det er installeret som standard i langt de fleste distros, så du behøver ikke installere pakken...

Nå, først og fremmest, lad os se et eksempel for at forstå det grundlæggende i uniq-kommandoen, og hvad den gør, og hvad den ikke gør. Til ejemplo, forestil dig, at du opretter en tekstfil kaldet test.txt, og indeni sætter du flere gentagne sætninger eller ord, såsom at gentage tre linjer «Hej dette er en test» og brug derefter uniq med det:

nano prueba.txt

uniq prueba.txt

Nå, i så fald udgangen af ​​kommandoen bliver ganske enkelt:

Salida:

Hola, esto es una prueba

Det vil sige, sæt en enkelt linje «Hej dette er en test» eliminere de 2 andre, der er ens. Men pas på, hvis du bruger cat igen for at se originalen, vil du se, at de ikke er blevet fjernet fra filen, den har simpelthen fjernet dem fra outputtet:

cat prueba.txt

hvis output ville være:

Hola, esto es una prueba

Hola, esto es una prueba

Hola, esto es una prueba

Men kommandoen uniq har mange flere muligheder. Det kan for eksempel fortælle dig antallet af gange en linje gentages, der angiver i begyndelsen af ​​linjen antallet af gentagelser. For det:

uniq -c prueba.txt

Du kunne også bare udskrive gentagne linjer, og ignorer de ikke-gentagne:

uniq -d prueba.txt

Eller dem, der ikke er duplikeret med -u-indstillingen:

uniq -u prueba.txt

At bruge case-sensitive og skift mellem store og små bogstaver, kan du bruge -i-indstillingen:

uniq -i prueba.txt

Ok, og hvordan kunne det gøres oprette en fil med kun de unikke linjer, fjerner alle dubletter på én gang. Nå, det er så simpelt som at bruge et rør til at overføre output fra uniq til en ny tekstfil:

uniq prueba.txt > unicas.txt


Efterlad din kommentar

Din e-mailadresse vil ikke blive offentliggjort. Obligatoriske felter er markeret med *

*

*

  1. Ansvarlig for data: AB Internet Networks 2008 SL
  2. Formålet med dataene: Control SPAM, management af kommentarer.
  3. Legitimering: Dit samtykke
  4. Kommunikation af dataene: Dataene vil ikke blive kommunikeret til tredjemand, undtagen ved juridisk forpligtelse.
  5. Datalagring: Database hostet af Occentus Networks (EU)
  6. Rettigheder: Du kan til enhver tid begrænse, gendanne og slette dine oplysninger.