Príkaz Grep sa používa na vyhľadávanie textu zo súborov. Je to všestranný vzor, ktorý vyvoláva grep s -r. -R vyhľadajte súbory rekurzívne z podadresárov, počnúc aktuálnym adresárom. Príkaz sa spúšťa z adresára najvyššej úrovne. Napríklad / home / abc atď. Grep je nástroj na získanie závislostí pri prechode z jedného hostiteľa na druhého. Pokiaľ v príkaze neuvádzame adresár, grep prehľadá aktuálny pracovný adresár. Ak chcete vykonať grep rekurzívne, existujú tri argumenty, ktoré sme prevzali z manuálovej stránky grepu.
$ Muž grep
-zahrnúť sa používa na presnú zhodu v súbore, čo môžu byť súbory, ktoré sa nachádzajú v adresári, alebo predvolene. -r implikuje názov adresára, ako je opísané vyššie, ak v príkaze nie je definovaná cesta, bude sa brať do úvahy aktuálny adresár. Nasleduje iba symbolický odkaz. -R je celkom odlišné od -r, pretože číta všetky súbory, nielen tie symbolicky definované.
Syntax
Grep -R „vzor“ / cesta /„Cesta“ je „cesta k adresáru“. A vzor je slovo alebo reťazec, ktorý chcete vyhľadať.
Predpoklad
Aby ste pochopili grep rekurzívnu funkciu, musíte mať operačný systém Linux. Po inštalácii nakonfigurujete systém Linux zadaním používateľského mena a hesla. Potom získate oprávnenie na prístup ku všetkým aplikáciám v danom operačnom systéme.
Všetky súbory v systéme Linux
Tento príkaz vám pomôže prehľadať všetky názvy súborov v adresároch vášho systému. Pretože -l poskytuje iba názvy súborov, -r pomôže vyhľadať symbolicky, kdekoľvek je požadované slovo, bude výstupom. Zatiaľ čo „Aqsa“ je slovo, ktoré chceme vyhľadať. Tento príkaz je bez akejkoľvek cesty k adresáru, pretože tu chceme mať všetky možné názvy súborov v systéme. Ak sme zadali cestu, potom bude mať proces hľadania obmedzenia.
$ grep -r -l „aqsa“
Jednoduchý príklad
Aby sme pochopili dilemu rekurzivity pomocou cesty, predstavili sme jednoduchý príklad, ktorý používateľa usmerní. Ako je uvedené v nasledujúcom príkaze, slovo „univerzálny“ je slovo, ktoré chceme vyhľadať. Za slovom sa nachádza adresár, do ktorého by sme chceli triediť. Ukazuje názov súboru s adresárom aj celý text vo vnútri súboru. -r tiež zobrazuje binárne súbory.
$ grep -r univerzálny / home / aqsayasin
Rekurzívne vyhľadávanie vo všetkých adresároch a podadresároch
Ako všetci poznáme funkčnosť „*“ vo vyhľadávacom systéme. Znamená to triedenie vo všetkých súboroch. Príkaz teda zobrazí príslušné údaje zo všetkých súborov. Slovo „house“ sa má hľadať rekurzívne pomocou príkazu grep.
$ grep -r „dom“ *
Zobrazuje názvy súborov a text vo vnútri zvýraznením hľadaného slova, čo naznačuje, že existuje zhoda. Toto slovo obsahoval iba jeden textový súbor, ktorý sa zobrazuje vo výslednom riadku.
Grep rekurzívne pre reťazec
Na rozdiel od vyššie uvedených príkladov pracuje grep na reťazci v konkrétnom adresári. / etc / je adresár príkazov, čo znamená, že vyhľadávanie sa bude uskutočňovať prostredníctvom tohto adresára, adresy IP počítača. Jeho informácie sú uložené v adresári a v priečinku / etc / ppp / sa nachádzajú názvy súborov. Táto možnosť predstavuje názov konkrétneho priečinka. Tento príkaz načíta všetky súbory v danom adresári.
$ grep -r „192.168.1.5 "/ etc /
Názvy súboru vo výstupe je možné potlačiť pomocou možnosti -h. Príkaz je nasledovný.
$ grep -h -R "192.168.1.5 "/ etc /Oba oddeľovače je možné v príkaze napísať ako -h -R.
Vyhľadajte rekurzívne bez adresára
Rekurzívne vyhľadávanie je možné vykonať aj bez použitia adresára jednoduchým vyhľadávaním slova jediným slovom.
$ grep -r manželkaSlovo „manželka“ sa vyhľadáva vo všetkých adresároch automaticky, pretože ak nie je uvedený žiadny adresár, proces vyhľadávania bude pokračovať vo všetkých súboroch a adresároch systému. Bude tiež obsahovať binárne súbory a textové súbory. Najskôr sa zobrazí adresa a názvy súborov. Zatiaľ čo sa zobrazuje text vo vnútri súboru. Zobrazuje sa nielen obyčajný text, ale aj príkaz grep aplikovaný na text súboru, t.j.e., grep „Som domáca žena“.
Grep Presné viac vzorov
Vyhľadávanie viacerých metód je tiež funkcia získaná pomocou príkazu grep. „-Rw“ sa používa na preskúmanie konkrétneho zápasu. „-E“ sa používa na pridanie viac ako jedného vzoru do príkazu. Uvedená cesta k adresáru uľahčuje vyhľadávanie systému. Binárne súbory sú vylúčené, pretože limit je zavedený pri pridávaní adresára do príkazu. Výstup obsahuje názov adresára súboru a názov súboru. Taktiež sa zobrazí text vo vnútri súboru.
$ grep -rw '/ home / aqsayasin /'
Hľadané slová sú zvýraznené v texte súboru. Oba hľadané výrazy musia byť obsiahnuté v jednom súbore. Ako je uvedené na výstupe, existuje pravdepodobnosť existencie slov v rôznych súboroch.
Grep rekurzívne pomocou - - Zahrnúť
„-Include“ sa zhoduje s daným vzorom súboru a funguje efektívne, pretože tiež urýchľuje proces vyhľadávania, ktorý funguje u väčšiny súborov. Tu neprináša binárne ani kompilované ani obrazové súbory. Prípona súboru sa používa na doplnenie obmedzení príkazu. Uvádza sa, že adresár prináša požadovaný výstup. Zahrnuté kľúčové slovo je v grepe v porovnaní s inými funkciami dosť pokročilé.
$ grep -r - -include = ”* txt” “sestra” / home / aqsayasinZáver
V tomto článku sme vysvetlili každý príklad na demonštráciu použitia rekurzívnej funkcie grep. Rekurzívna funkcia sa používa na vyhľadávanie s obmedzeniami a presne vo všetkých adresároch v systéme. Ak adresár nie je prítomný, použije sa predvolene aktuálny adresár.