Overzicht
`uniq` wordt meestal in combinatie met het `sort` commando gebruikt via een pipe (|) om dubbele regels in gesorteerde data efficiënt te verwerken. De `-c` optie maakt het gemakkelijk om het aantal dubbele regels te achterhalen.
Belangrijkste kenmerken
- Verwerking van opeenvolgende dubbele regels
- Tellen van dubbele regels (-c)
- Optie om hoofdletters en kleine letters te negeren (-i)
- Vergelijking waarbij specifieke velden of tekens worden genegeerd
Belangrijkste opties
Functionaliteit
Vergelijkingsmethoden
Gegenereerde opdracht:
Probeer de opdrachtcombinaties.
Uitleg:
`uniq` Voer het commando uit.
Combineer deze opties en voer de opdracht virtueel uit met de AI.
Gebruiksvoorbeelden
Woordfrequentie in een bestand berekenen
sort words.txt | uniq -c
Telt hoe vaak elk woord (regel) in het bestand `words.txt` voorkomt en toont het resultaat. Omdat `uniq` alleen opeenvolgende duplicaten verwerkt, moet `sort` eerst worden gebruikt om alle duplicaten naast elkaar te plaatsen.
Meest voorkomende regels in een logbestand vinden
cat log.txt | sort | uniq -c | sort -nr
Telt het aantal dubbele regels in een logbestand en sorteert vervolgens het resultaat op basis van het aantal (numeriek, aflopend) om de meest voorkomende regels bovenaan te tonen.
Dubbele regels tellen, hoofdletters/kleine letters negerend
echo -e "Apple\napple\nBanana\napple" | sort | uniq -ci
Telt het aantal duplicaten van de standaardinvoer, waarbij 'Apple' en 'apple' als hetzelfde worden beschouwd.
Dubbele regels tellen, specifieke velden negerend
sort -k2 data.txt | uniq -f 1 -c
Telt het aantal dubbele regels door het eerste veld van het bestand te negeren en te vergelijken vanaf het tweede veld. (Bijvoorbeeld, als `data.txt` de inhoud `ID1 apple`, `ID2 apple` heeft, wordt 'apple' als 2 geteld).
Tips & Aandachtspunten
Het `uniq` commando verwerkt standaard alleen 'opeenvolgende' dubbele regels. Om duplicaten in het hele bestand te verwijderen of te tellen, moet u daarom eerst de regels sorteren met het `sort` commando.
Gebruikstips
- Gebruik met sort: `uniq` verwerkt alleen opeenvolgende duplicaten, dus om duplicaten in het hele bestand te verwerken, moet u eerst sorteren met `sort`. Bijvoorbeeld: `sort file.txt | uniq -c`
- Meest voorkomende items vinden: U kunt de uitvoer van `uniq -c` doorsturen naar `sort -nr` om de meest voorkomende items in aflopende volgorde te sorteren. Bijvoorbeeld: `sort file.txt | uniq -c | sort -nr`
- Prestatieoverwegingen: Voor zeer grote bestanden moet u rekening houden met het geheugengebruik van `sort` en `uniq`. Indien nodig kunt u de `-T` optie van `sort` gebruiken om een tijdelijk directory op te geven.