Naučte sa Linux

Zástupné znaky v systéme Linux sú vysvetlené na 10 príkladoch

Zástupné znaky v systéme Linux sú vysvetlené na 10 príkladoch

Zástupné znaky, a.k.a. metaznaky, sú darom z nebies, pokiaľ ide o hľadanie konkrétnych názvov súborov z hromady podobne pomenovaných súborov. Napríklad pomocou zástupných znakov v systéme Linux môžete použiť znak je príkaz,  rm príkaz alebo akýkoľvek iný príkaz Linuxu, a to na viacerých súboroch, pokiaľ zodpovedajú definovaným kritériám.

V tomto čítaní si povieme, ako môžete pomocou zástupných znakov v systéme Linux zefektívniť svoj pracovný postup a zvýšiť produktivitu. Najskôr sa však poďme rýchlo pozrieť na najsilnejšie a najbežnejšie používané zástupné znaky v systéme Linux:

  1. Hviezdička (*): (*) zástupný znak predstavuje ľubovoľný počet neznámych znakov. Je to užitočné pri hľadaní dokumentov alebo súborov, ale iba pri zapamätaní časti názvu.
  2. Otáznik (?): (?) zástupný znak predstavuje iba jeden neznámy znak. To je užitočné, ak máte zoznam súborov s podobnými názvami a nemáte istotu s niekoľkými znakmi.
  3. Znaky v zátvorkách ([]): ([]) zástupný znak - 3. zátvorka a nie 1. zátvorka - sa používa na priradenie všetkých výskytov znakov definovaných v zátvorkách. Táto možnosť je užitočná pri práci s malými a veľkými súbormi, ako uvidíme neskôr.

Teraz si uvedomujem, že všetky tieto informácie nedávajú zmysel, ak ste sa nikdy predtým nezaoberali zástupnými znakmi. Aby sme vám však pomohli objasniť zmätok, zostavili sme podrobného sprievodcu vrátane 10 príkladov, ktorý vám pomôže správne pochopiť funkciu zástupných znakov a začnete ich používať sami.

Príklady zhody súborov pomocou zástupných znakov

Na začiatok použijeme všetky rôzne zástupné znaky, o ktorých sme hovorili vyššie, a pozrime sa, ako ich použiť na zhoda mien súborov. Použijeme na to nasledujúcu sadu súborov:

  1. Tento príkaz sa bude zhodovať so všetkými názvami súborov, ktoré sa začínajú písmenom M a končiac jedným alebo viacerými výskytmi ľubovoľného znaku.
$ ls -l M *

Výkon:

Všimnite si, ako sa zhoduje iba so súbormi, ktoré začínajú veľkým písmenom „M“ a nie malými písmenami „m“. 

2. Tento príkaz skopíruje všetky názvy súborov začínajúce sa Moje údaje a končiac jedným alebo viacerými výskytmi ľubovoľného znaku.

$ ls Moje údaje *

Výkon:

3. Tento príkaz priradí všetky súbory začínajúce písmenom M, končiace písmenom N, a medzi ktorými je ľubovoľný 1 znak.

$ ls M?N.š

Výkon:

4. Tento príkaz priradí všetky súbory začínajúce písmenom M, končiace písmenom N, ale ak je medzi nimi iba 1 znak, patrí do zoznamu znakov definovaných v hranatých zátvorkách [AEIOU].

$ ls M [AEIOU] N.š

Výkon:

4 príklady kombinácie rôznych zástupných znakov na účely zhody názvov súborov

Teraz, aby ste preplnili svoju efektivitu, môžete tieto zástupné znaky kombinovať a priraďovať im, aby spolupracovali a boli efektívnejší pri porovnávaní mien súborov.

  1. Tu je príkaz, ktorý vám pomôže nájsť akýkoľvek názov súboru, ktorý môže mať ľubovoľné 3 znaky (vrátane bez znakov), za ktorými bude nasledovať koláč a končiac jedným alebo viacerými výskytmi ľubovoľného znaku.
$ ls ???koláč *

Výkon:

2. Tu je príkaz, ktorý porovná všetky názvy súborov, ktoré sa začínajú ľubovoľným z týchto znakov v hranatých zátvorkách [MNLOP] a končia jedným alebo viacerými výskytmi ľubovoľného znaku.

Pozrime sa tiež, čo sa stane, keď vymieňame [MNLOP] s [mnlop].

Príkazy, ktoré budeme používať, sú:

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

Výkon:

Ako vidíte, musíte si uvedomiť veľké a malé písmená, ktoré zadáte do zástupného znaku zátvorky, pretože to ovplyvní výsledok.

3. Tu je príkaz, ktorý porovná všetky názvy súborov s niektorým z týchto znakov [MNLOP] ako prvý jeden z týchto znakov [AEIOU] ako druhý, za ktorým nasleduje N, a nakoniec končí jedným alebo viacerými výskytmi ľubovoľného znaku.

$ ls [MNLOP] [AEIOU] N *

Výkon:

Všimnite si, ako (*) zástupný znak pomáha iba nájsť všetky prípony názvov súborov.4.

Tu je príkaz, ktorý porovná všetky názvy súborov, ktoré začínajú jedným alebo viacerými výskytmi ľubovoľného znaku, ktorý vedie k M, za ktorým nasleduje ľubovoľný 1 znak, potom nasleduje N, a potom sa končí jedným alebo viacerými výskytmi ľubovoľného znaku.

$ ls * M?N *

Výkon:

Používanie zástupných znakov na zhodu znakových sád

Teraz by ste už mali mať pracovné pochopenie toho, ako fungujú zástupné znaky. Teraz sa môžeme zamerať na niektoré pokročilé prípady použitia, keď sú zástupné znaky neoceniteľné.

Napríklad zástupný znak zátvorky umožňuje definovať rozsah znakov pomocou [-] namiesto toho, aby ste vypisovali každý znak. To môže byť veľmi užitočné, ak chcete určiť skupinu znakov a zhodovať s názvami súborov podľa toho, kde sa znaky objavia. 

Použijeme na to nasledujúcu sadu súborov, ako je to znázornené na obrázku:

Ako vidíte, obrázok, ktorý sme vytvorili, je zoznam súborov obsahujúcich rôzne údaje o Pokémonoch.

Teraz nájdite všetky názvy súborov, ktoré začínajú pokemon- nasledované číslom, potom ľubovoľným alfanumerickým znakom, opäť nasledovaným číslom a končiac jedným alebo viacerými výskytmi ľubovoľného znaku, môžeme použiť nasledujúci príkaz:

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

Výkon:

Časť [0-9] predstavuje akékoľvek číselné znaky medzi 0 do 9

Ďalšia časť [0-9a-zA-Z] predstavuje ľubovoľný počet znakov medzi 0 do 9, alebo akékoľvek malé písmeno medzi a do z, alebo veľké písmeno medzi A do Z.

Ako taký, keby sme sa vypli [0-9a-zA-Z] s [0-9a-z], môžete vidieť, že výsledok neobsahuje žiadny názov súboru s veľkými písmenami na určenej pozícii.

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

Výkon:

Použitie zástupných znakov na vyvrátenie súboru znakov

Rovnako ako môžete určiť množinu znakov, môžete tiež vylúčiť množinu znakov pri hľadaní názvov súborov. Tu je príklad toho, ako sa to deje:

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

Výkon:

Toto sa zhoduje so všetkými názvami súborov, ktoré začínajú pokemon- nasledovaný ľubovoľným číselným znakom, potom ľubovoľným znakom iným ako malými písmenami, následným ľubovoľným číselným znakom a nakoniec končiacim jedným alebo viacerými výskytmi ľubovoľného znaku.

Použitím [!a-z], negujeme množinu všetkých malých písmen. Teraz sa názvy súborov zhodujú so všetkými znakmi, ktoré nie sú malými písmenami.

Balenie

Týmto sa dostávame na koniec nášho rýchleho prehľadu o zástupných znakoch Linuxu a o tom, ako ich používať. Keď zhrnieme všetko, v skratke hviezdička (*) Zástupný znak je najužitočnejší, keď poznáte názov súboru, ale nie príponu. The otáznik (?) Zástupný znak vám môže pomôcť, ak zabudnete niekoľko znakov názvu súboru. The zátvorka ([]) Zástupný znak je užitočný, ak chcete, aby vaše vyhľadávanie bolo obsiahnuté v množine definovaných znakov.

Hry Najlepšie aplikácie na mapovanie gamepadu pre Linux
Najlepšie aplikácie na mapovanie gamepadu pre Linux
Ak radi hráte hry v systéme Linux s gamepadom namiesto typického systému vstupu pre klávesnicu a myš, máte tu niekoľko užitočných aplikácií. Mnoho hie...
Hry Užitočné nástroje pre hráčov systému Linux
Užitočné nástroje pre hráčov systému Linux
Ak radi hráte hry v systéme Linux, je pravdepodobné, že ste na vylepšenie herného zážitku použili aplikácie a pomôcky ako Wine, Lutris a OBS Studio. O...
Hry HD remasterované hry pre Linux, ktoré nikdy predtým nemali vydanie Linuxu
HD remasterované hry pre Linux, ktoré nikdy predtým nemali vydanie Linuxu
Mnoho vývojárov a vydavateľov hier prichádza s remastrom starých hier v rozlíšení HD, aby predĺžili životnosť franšízy. Prosím fanúšikov, ktorí požadu...