Naučte se Linux

Zástupné znaky v systému Linux jsou vysvětleny na 10 příkladech

Zástupné znaky v systému Linux jsou vysvětleny na 10 příkladech

Zástupné znaky, a.k.A. meta znaky, jsou dar z nebes, pokud jde o hledání konkrétních názvů souborů z hromady podobně pojmenovaných souborů. Například pomocí zástupných znaků v systému Linux můžete použít je příkaz,  rm příkaz nebo jakýkoli jiný příkaz Linuxu, a to na více souborech, pokud odpovídají definovaným kritériím.

V tomto čtení probereme, jak můžete pomocí zástupných znaků v Linuxu zefektivnit svůj pracovní postup a zvýšit produktivitu. Nejprve se ale podívejme na nejsilnější a nejčastěji používané zástupné znaky v Linuxu:

  1. Hvězdička (*): The (*) zástupný znak představuje libovolný počet neznámých znaků. To je užitečné při hledání dokumentů nebo souborů, ale pouze při zapamatování části jeho jména.
  2. Otazník (?): The (?) zástupný znak představuje pouze jeden neznámý znak. To je užitečné, pokud máte seznam podobně pojmenovaných souborů a nejste si jisti několika znaky.
  3. Znaky v závorkách ([]): ([]) zástupný znak - 3. závorka a ne 1. závorka - slouží k porovnání všech výskytů znaků definovaných v závorkách. Tato možnost je užitečná při práci s velkými a malými soubory, jak uvidíme později.

Nyní si uvědomuji, že všechny tyto informace nedávají smysl, pokud jste se zástupnými znaky nikdy předtím nezabývali. Abychom vám však pomohli vyjasnit si nejasnosti, sestavili jsme podrobného průvodce, včetně 10 příkladů, abyste se ujistili, že správně rozumíte funkci zástupných znaků a začnete je používat sami.

Příklady shody názvů souborů pomocí zástupných znaků

Začneme tím, že použijeme všechny různé zástupné znaky, o kterých jsme hovořili dříve, a uvidíme, jak je použít k porovnávání názvů souborů. K tomu použijeme následující sadu souborů:

  1. Tento příkaz bude odpovídat všem názvům souborů, které začínají písmenem M a končí jedním nebo více výskyty libovolného znaku.
$ ls -l M *

Výstup:

Všimněte si, že odpovídá pouze souborům začínajícím velkým písmenem „M“ a nikoli malými písmeny „m“. 

2. Tento příkaz zkopíruje všechny názvy souborů začínající na Moje data a končí jedním nebo více výskyty libovolného znaku.

$ ls Moje data *

Výstup:

3. Tento příkaz bude odpovídat všem souborům začínajícím písmenem M, končící písmenem N, a mezi nimi je libovolný 1 znak.

$ ls M?N.sh

Výstup:

4. Tento příkaz bude odpovídat všem souborům začínajícím písmenem M, končící písmenem N, ale mít mezi nimi pouze 1 znak patří do seznamu znaků definovaných v hranatých závorkách [AEIOU].

$ ls M [AEIOU] N.sh

Výstup:

4 příklady kombinace různých zástupných znaků pro shodu názvů souborů

Nyní, abyste přeplnili svoji efektivitu, můžete tyto zástupné znaky kombinovat a spolupracovat a být efektivnější při porovnávání názvů souborů.

  1. Zde je příkaz, který vám pomůže najít libovolný název souboru, který může mít libovolné 3 znaky (včetně bez znaků) a za nimi dort a končí jedním nebo více výskyty libovolného znaku.
$ ls ???dort*

Výstup:

2. Zde je příkaz, který bude odpovídat všem názvům souborů, které začínají některým z těchto znaků v hranatých závorkách [MNLOP] a končí jedním nebo více výskyty libovolného znaku.

Podívejme se také, co se stane, když vyměníme [MNLOP] s [mnlop].

Příkazy, které budeme používat, jsou:

$ ls [MNLOP] *
$ ls [mnlop] *

Výstup:

Jak vidíte, musíte si být vědomi velkých a malých písmen, která zadáte do zástupného znaku závorky, protože to ovlivní výsledek.

3. Zde je příkaz, který porovná všechny názvy souborů s některým z těchto znaků [MNLOP] jako první některý z těchto znaků [AEIOU] jako druhý, následovaný N, a nakonec končí u jednoho nebo více výskytů libovolného znaku.

$ ls [MNLOP] [AEIOU] N *

Výstup:

Všimněte si, jak (*) zástupný znak pouze pomáhá najít všechny přípony názvů souborů.4.

Zde je příkaz, který bude odpovídat všem názvům souborů, které začínají jedním nebo více výskyty libovolného znaku vedoucího k M, následuje libovolný 1 znak, poté následuje N, a poté končí jedním nebo více výskyty libovolného znaku.

$ ls * M?N *

Výstup:

Použití zástupných znaků k párování znakových sad

Nyní byste měli mít pracovní pochopení toho, jak fungují zástupné znaky. Nyní se můžeme zaměřit na některé pokročilé případy použití, kdy jsou zástupné znaky neocenitelné.

Například zástupný znak závorky umožňuje definovat rozsah znaků pomocí [-] místo toho, abyste vypisovali každý znak. To může být velmi užitečné, když chcete určit sadu znaků a porovnat názvy souborů podle toho, kde se znaky objevují. 

K tomu použijeme následující sadu souborů, jak je znázorněno na obrázku:

Jak vidíte, obrázek, který jsme vytvořili, je seznam souborů obsahujících různá data Pokémona.

Nyní najdete všechny názvy souborů, které začínají pokemon- následované číslem, poté libovolným alfanumerickým znakem, opět následovaným číslem a poté končícím jedním nebo více výskyty libovolného znaku, můžeme použít následující příkaz:

$ ls pokémon - [0-9] [0-9a-zA-Z] [0-9] *

Výstup:

Část [0-9] představuje jakékoli číselné znaky mezi 0 na 9

Další část [0-9a-zA-Z] představuje libovolný počet znaků mezi 0 na 9, nebo jakékoli malé písmeno mezi A na z, nebo velké písmeno mezi A na Z.

Pokud tedy vypneme [0-9a-zA-Z] s [0-9a-z], můžete vidět, že výsledek neobsahuje žádný název souboru s velkými písmeny na určené pozici.

$ ls pokémon - [0-9] [0-9a-z] [0-9] *

Výstup:

Použití zástupných znaků k vyřazení sady znaků

Stejně jako můžete určit sadu znaků, můžete také sadu znaků negovat při hledání názvů souborů. Zde je příklad toho, jak se to dělá:

$ ls pokémon - [0-9] [!a-z] [0-9] *

Výstup:

To odpovídá všem názvům souborů, které začínají pokemon- následuje libovolný číselný znak, poté libovolný znak kromě malých písmen, následuje libovolný číselný znak a nakonec končí jedním nebo více výskyty libovolného znaku.

Použitím [!a-z], negujeme množinu všech malých písmen. Názvy souborů se nyní shodují s libovolným znakem, který není malým písmenem.

Balení

Tím se dostáváme na konec našeho rychlého pohledu na zástupné znaky Linuxu a na to, jak je používat. Shrnutí všeho, v kostce, hvězdička (*) Zástupný znak je nejužitečnější, pokud znáte název souboru, ale nikoli příponu. The otazník (?) Zástupný znak vám může pomoci, pokud zapomenete několik znaků názvu souboru. The Závorka ([]) Zástupný znak je užitečný, pokud chcete, aby vaše hledání bylo v sadě definovaných znaků.

Hry Jak nainstalovat League Of Legends na Ubuntu 14.04
Jak nainstalovat League Of Legends na Ubuntu 14.04
Pokud jste fanouškem League of Legends, pak je to pro vás příležitost otestovat běh League of Legends. Všimněte si, že LOL je podporován na PlayOnLinu...
Hry Nainstalujte si nejnovější strategickou hru OpenRA na Ubuntu Linux
Nainstalujte si nejnovější strategickou hru OpenRA na Ubuntu Linux
OpenRA je herní engine Libre / Free Real Time Strategy, který obnovuje rané hry Westwood, jako je klasický Command & Conquer: Red Alert. Distribuované...
Hry Nainstalujte si nejnovější Dolphin Emulator pro Gamecube a Wii na Linuxu
Nainstalujte si nejnovější Dolphin Emulator pro Gamecube a Wii na Linuxu
Emulátor Dolphin vám umožní hrát vybrané hry Gamecube a Wii na osobních počítačích se systémem Linux (PC). Jako volně dostupný herní emulátor s otevř...