Prechádzanie cez strom adresárov na nájdenie súborov je bežnou operáciou, ktorú vykonáva väčšina softvéru na správu súborových systémov. Tento nástroj je vo väčšine operačných systémov vo forme príkazov príkazového riadka. V tomto článku sa dozviete, ako nájsť súbory pomocou zhody zástupných znakov v operačnom systéme Linux.
Rekurzívne vyhľadávanie súborov v strome adresárov
Použitie príkaz nájsť bude určený na plnenie úlohy. Príkaz „s“ sa používa na vyhľadávanie súborov v hierarchii adresárov. Stránka pomocníka príkazu find je nasledovná:

Príkaz find a prepínač -name vyhľadajú požadovaný súbor v adresári. Prepínač poskytuje názov (alebo vzor) príkazu find, ktorý má hľadať. Posledný príkaz by teda bol
find -name 'Re_Pattern'>
V dôsledku toho by sa zobrazil akýkoľvek súbor s Re_Pattern v jeho súbore. Vzor môže obsahovať doslovné znaky alebo sekvenciu zástupných výrazov. V takýchto vzoroch sa používajú dva zástupné znaky:
niť.zničiť
* => Ľubovoľný znak koľkokrát (nemusí byť ani prítomný)
? => Mala by byť prítomná jedna postava
Adresár, v ktorom by sa operácie vykonávali, je:

Adresár obsahujúci niektoré súbory a podadresáre
preity zinta
Pre jednoduchosť sú podadresáre prázdne. Akýkoľvek vytvorený efekt bude teda viditeľný iba na súbore v tomto adresári. Súbor, ktorý by sa hľadal v adresári, by bol príkaz apple, ktorý by bol:
find -name 'apple'>

Keďže iba jeden súbor v adresári mal názov apple, vo výstupe sa zobrazil iba jeden názov. Ale ak k tomu pridáte zástupný znak, napríklad * (hviezdička):
find -name '*apple*'>

skončili sme s výsledkom všetkých súborov obsahujúcich vo svojom názve apple. Podobne by sa dala použiť kombinácia takýchto zástupných znakov. Napr. Ak chceme získať všetky súbory, ktoré majú v názve 4 znaky, príkaz by bol:
find -name '????'>

Pomocou týchto dvoch zástupných znakov by sa teda dalo vytvoriť pole vzorov na rozpoznanie niekoľkých názvov súborov. Príkaz find obsahuje ďalšie prepínače, ktoré umožňujú väčšie zefektívnenie výstupu.