logo

uniq Command v Linuxu s příklady

The unikátní command v Linuxu je nástroj příkazového řádku, který hlásí nebo filtruje opakované řádky v souboru. jednoduchými slovy, unikátní je nástroj, který pomáhá detekovat sousední duplicitní řádky a také duplicitní řádky vymaže. unikátní odfiltruje sousední odpovídající řádky ze vstupního souboru (který je vyžadován jako argument) a zapíše filtrovaná data do výstupního souboru.

Obsah



Syntaxe příkazu uniq

Základní syntaxe ` uniq`> příkaz je:

uniq [OPTIONS] [INPUT_FILE [OUTPUT_FILE]]>

Tady,

  • `OPTIONS`> : Volitelné příznaky, které upravují chování ` uniq`> příkaz.
  • `INPUT_FILE`> : Cesta ke vstupnímu souboru obsahujícímu textová data. Pokud není uvedeno, ` uniq`> čte ze standardního vstupu (obvykle klávesnice).
  • `OUTPUT_FILE`> : Cesta k výstupnímu souboru, kam budou zapsány jedinečné řádky. Pokud není uvedeno, ` uniq`> zapisuje na standardní výstup (obvykle terminál).

Společné možnosti uniq> Příkaz

Zde jsou některé běžné možnosti, které lze použít s ` uniq`> příkaz:



Možnosti

Popis

-c, –počítat



Před řádky uveďte počet výskytů ve vstupu, za kterým následuje mezera.

-d, -opakoval

objekt k jsonobject java

Pouze výstupní řádky, které se opakují na vstupu.

-i, –ignore-case

Ignorujte rozdíly v případě při porovnávání čar.

-f, –přeskočit-pole=N

Vyhněte se porovnávání prvních N polí v každém řádku.

-s, –skip-chars=N

Vyhněte se porovnávání prvních N znaků v každém řádku.

-u, –jedinečný

Pouze výstupní řádky, které jsou jedinečné na vstupu.

Příklady použití ` uniq`> Příkaz

Nyní pochopíme použití tohoto pomocí příkladu. Předpokládejme, že máte textový soubor s názvem kt.txt, který obsahuje opakované řádky, které je třeba vynechat. To lze jednoduše provést pomocí 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.>

Jak odstranit duplicitní řádky pomocí příkazu `uniq`

Chcete-li odstranit duplicitní řádky z ` kt.txt`> , můžeme použít ` uniq`> příkaz:

uniq kt.txt>

odstranit duplicitní řádky

odstranit duplicitní řádky

Jak můžete vidět, že jsme ve výše uvedeném příkladu uniq použili pouze název vstupního souboru a protože jsme nepoužili žádný výstupní soubor k uložení vytvořeného výstupu, příkaz uniq zobrazil filtrovaný výstup na standardním výstupu se všemi duplikáty linky odstraněny.

Poznámka: uniq není schopen detekovat duplicitní čáry, pokud nejsou vedle sebe. Obsah v souboru je proto nutné před použitím uniq roztřídit nebo můžete jednoduše použít třídit -u místo příkazu uniq.

Jak počítat duplicitní řádky pomocí příkazu `uniq` v Linuxu

' -c`> volba uvede před každým řádkem počet výskytů na vstupu:

uniq -c kt.txt>
Počítání výskytu duplicitních řádků

Počítání výskytu duplicitních řádků

V tomto příkladu je na začátku každého řádku zobrazeno jeho opakované číslo

Jak zobrazit opakované řádky pomocí příkazu `uniq` v Linuxu

' -d`> volba vytiskne pouze duplicitní řádky:

uniq -d kt.txt>
zobrazit pouze duplicitní řádky

zobrazit pouze duplicitní řádky

Jak zobrazit všechny duplicitní řádky pomocí příkazu `uniq` v Linuxu

' -D`> volba vytiskne všechny duplicitní řádky, nejen jeden na skupinu:

uniq -D kt.txt>
vytiskne všechny duplicitní řádky

vytiskne všechny duplicitní řádky

Jak zobrazit jedinečné čáry pomocí příkazu `uniq` v Linuxu

' -u`> možnost vytiskne pouze jedinečné řádky:

uniq -u kt.txt>

tiskne pouze jedinečné čáry

tiskne pouze jedinečné čáry

Přeskakování prvních N polí ( -f> volba) Použití příkazu `uniq` v Linuxu

' -f N`> volba přeskočí prvních N polí před porovnáním řádků. Užitečné pro číslované řádky:

uniq -f 2 f1.txt>

//zobrazení obsahu souboru f1.txt//
1. Miluji hudbu.
2. Miluji hudbu.
3. Miluji hudbu Kartik.
4. Miluji hudbu Kartik.

možnost `-s N`

Možnost `-s N`

V tomto příkladu je použita 2, protože jsme potřebovali porovnat řádky za číslováním 1,2.. a za tečkami

Přeskakování prvních N znaků ( -s> volba) Použití příkazu `uniq` v Linuxu

' -s N`> volba přeskočí prvních N znaků v každém řádku:

//zobrazení obsahu souboru f2.txt//
#%@Miluji hudbu.
^&(Miluji hudbu.
*-!@dík.
#%@!dík.

uniq -s 3 f2.txt>

V tomto příkladu jsou filtrovány řádky stejné po přeskočení 3 znaků.

Možnost `-s N`

Možnost `-s N`

Omezení srovnání s prvními N znaky ( -w> volba) Použití příkazu `uniq` v Linuxu

Použití volby -w: Podobně jako u způsobu přeskakování znaků můžeme také požádat uniq o omezení srovnání na stanovený počet znaků. K tomu se používá volba -w příkazového řádku.

//zobrazení obsahu f3.txt//
jak je to možné?
Jak to lze udělat?
Jak to použít?

uniq -w 3 f3.txt>

Protože první 3 znaky ze všech 3 řádků jsou stejné, proto je uniq považoval za duplikáty a podle toho poskytl výstup.

Použití volby -w

Použití volby -w

Porovnání bez rozlišení malých a velkých písmen ( -i> volba) Použití příkazu `uniq` v Linuxu

' -i`> volba umožňuje, aby se v porovnání nerozlišovala velká a malá písmena:

//zobrazení obsahu f4.txt//
MILUJI HUDBU
Miluji hudbu
DÍK

uniq f4.txt>

Zde nejsou řádky považovány za duplikáty s jednoduchým použitím uniq

//nyní pomocí volby -i//

uniq -i f4.txt>

Nyní je druhý řádek odstraněn při použití volby -i.

porovnání nerozlišuje malá a velká písmena

porovnání nerozlišuje malá a velká písmena

NULL ukončený výstup ( -z> volba) Použití příkazu `uniq` v Linuxu

Použití volby -z: Ve výchozím nastavení je výstup, který uniq produkuje, ukončen novým řádkem. Pokud však chcete, chcete místo toho mít výstup ukončený NULL (užitečné při práci s uniq ve skriptech). To lze provést pomocí volby příkazového řádku -z.

Syntax:

uniq -z file-name>

Závěr

V tomto článku jsme diskutovali ouniq>command v Linuxu je všestranný nástroj pro práci s duplicitními řádky v textových souborech. Pochopením jeho různých možností můžete efektivně spravovat a zpracovávat textová data. Experimentujte s různými možnostmi a příklady, abyste zvládli použitíuniq>příkaz.

?list=PLqM7alHXFySFc4KtwEZTANgmyJm3NqS_L