grep

Jak rekurzivně používat Grep?

Jak rekurzivně používat Grep?

Příkaz Grep se používá k vyhledávání textu ze souborů. Jedná se o univerzální vzor, ​​který vyvolá grep pomocí -r. -R vyhledejte soubory rekurzivně z podadresářů, počínaje aktuálním adresářem. Příkaz se spouští z adresáře nejvyšší úrovně. Například / home / abc atd. Grep je nástroj pro získání závislostí při přechodu z jednoho hostitele na druhého. Pokud v příkazu nezmiňujeme adresář, grep prohledá aktuální pracovní adresář. Chcete-li provést grep rekurzivně, existují tři argumenty, které jsme převzali z manuálové stránky grep.

$ Muž grep

-zahrnout se používá pro přesnou shodu v souboru, což mohou být soubory, které jsou přítomny v adresáři, nebo ve výchozím nastavení. -r implikuje název adresáře, jak bylo popsáno výše, pokud není v příkazu definována žádná cesta, je považován za aktuální adresář. Sleduje pouze symbolický odkaz. -R se zcela liší od -r, protože čte všechny soubory, nejen symbolicky definované.

Syntax

Grep -R „vzor“ / cesta /

„Cesta“ je „cesta k adresáři“. A vzorem je slovo nebo řetězec, který chcete vyhledat.

Předpoklad

Abyste porozuměli rekurzivní funkci grep, musíte mít operační systém Linux. Po instalaci nakonfigurujete Linux zadáním uživatelského jména a hesla. Poté získáte oprávnění pro přístup ke všem aplikacím v daném operačním systému.

Všechny soubory v systému Linux

Tento příkaz vám pomůže prohledat všechny názvy souborů v adresářích vašeho systému. Protože -l pracuje pouze s názvy souborů, -r pomůže vyhledat symbolicky, kdekoli je požadované slovo přítomno, přijde jako výstup. Zatímco „Aqsa“ je slovo, které chceme vyhledat. Tento příkaz nemá žádnou cestu k adresáři, protože zde chceme mít všechny možné názvy souborů v systému. Pokud jsme zadali cestu, bude mít proces hledání omezení.

$ grep -r -l „aqsa“

Jednoduchý příklad

Abychom pochopili dilema rekurzivity pomocí cesty, zavedli jsme jednoduchý příklad, který uživatele provede. Jak ukazuje následující příkaz, „univerzální“ je slovo, které chceme vyhledat. Za slovem je adresář, ve kterém si přejeme seřadit. Zobrazuje název souboru s adresářem i celý text uvnitř souboru. -r také zobrazuje binární soubory.

$ grep -r univerzální / home / aqsayasin

Rekurzivně vyhledávat ve všech adresářích a podadresářích

Jak všichni dobře známe funkčnost „*“ ve vyhledávacím systému. To znamená třídění ve všech souborech. Příkaz tedy zobrazí příslušná data ze všech souborů. Slovo „dům“ je třeba hledat rekurzivně pomocí příkazu grep.

$ grep -r „dům“ *

Zobrazuje názvy souborů a text uvnitř zvýrazněním hledaného slova, což naznačuje, že existuje shoda. Toto slovo obsahoval pouze jeden textový soubor, který se zobrazí ve výsledném řádku.

Grep rekurzivně pro řetězec

Na rozdíl od výše uvedených příkladů pracuje grep na řetězci v konkrétním adresáři. / etc / je adresář příkazů, což znamená, že vyhledávání bude probíhat prostřednictvím tohoto adresáře, adresy IP počítače. Jeho informace jsou uloženy v adresáři s názvy souborů přítomných v adresáři / etc / ppp /. Možnost je název konkrétní složky. Tento příkaz přečte všechny soubory v daném adresáři.

$ grep -r „192.168.1.5 ”/ etc /

Názvy souboru ve výstupu lze potlačit pomocí volby -h. Příkaz je následující.

$ grep -h -R "192.168.1.5 "/ etc /

Oba oddělovače lze v příkazu zapsat jako -h -R.

Vyhledávejte rekurzivně bez adresáře

Rekurzivní vyhledávání lze provést i bez použití adresáře jednoduchým prohledáním slova jediným slovem.

$ grep -r manželka

Slovo „manželka“ je automaticky prohledáváno ve všech adresářích, protože pokud není uveden žádný adresář, proces vyhledávání bude pokračovat ve všech souborech a adresářích systému. Bude také obsahovat binární soubory spolu s textovými soubory. Nejprve se zobrazí adresa a názvy souborů. Zatímco text uvnitř souboru je zobrazen. Je zobrazen nejen prostý text, ale také příkaz grep aplikovaný na text souboru, tj.E., grep „Jsem domácí manželka“.

Grep Přesné více vzorů

Hledání více metod je také funkce získaná pomocí příkazu grep. „-Rw“ se používá k prozkoumání konkrétního zápasu. „-E“ se používá k přidání více než jednoho vzoru do příkazu. Uvedená cesta k adresáři usnadňuje vyhledávání systému. Binární soubory jsou vyloučeny, protože limit je zaveden přidáním adresáře do příkazu. Výstup obsahuje název adresáře souboru a název souboru. Zobrazí se také text uvnitř souboru.

$ grep -rw '/ home / aqsayasin /'

Hledaná slova jsou v textu souboru zvýrazněna. Oba hledané výrazy musí být přítomny v jednom souboru. Existuje pravděpodobnost existence slov v různých souborech, jak je uvedeno na výstupu.

Grep rekurzivně pomocí - - Zahrnout

„-Include“ odpovídá danému vzoru souboru a funguje efektivně, protože také zrychluje proces vyhledávání, který funguje u většiny souborů. Zde nepřináší binární ani kompilované ani obrazové soubory. Přípona souboru se používá k přidání omezení příkazu. Uvedený adresář přináší požadovaný výstup. Zahrnuté klíčové slovo je v grepu poměrně pokročilé ve srovnání s jinými funkcemi.

$ grep -r - -include = ”* txt” “sestra” / home / aqsayasin

Závěr

V tomto článku jsme vysvětlili každý příklad, abychom demonstrovali použití rekurzivní funkce grep. Rekurzivní funkce se používá k vyhledávání s omezeními a přesně ve všech adresářích v systému. Pokud adresář není k dispozici, považuje se ve výchozím nastavení za aktuální adresář.

Hry Nejlepší linuxové distribuce pro hraní her v roce 2021
Nejlepší linuxové distribuce pro hraní her v roce 2021
Operační systém Linux má za sebou dlouhou cestu od svého původního, jednoduchého vzhledu založeného na serveru. Tento OS se v posledních letech nesmír...
Hry Jak zachytit a streamovat vaši herní relaci v systému Linux
Jak zachytit a streamovat vaši herní relaci v systému Linux
V minulosti bylo hraní her považováno pouze za koníček, ale postupem času došlo v herním průmyslu k obrovskému nárůstu z hlediska technologie a počtu ...
Hry Nejlepší hry pro ruční sledování
Nejlepší hry pro ruční sledování
Oculus Quest nedávno představil skvělou myšlenku ručního sledování bez ovladačů. S neustále se zvyšujícím počtem her a aktivit, které provádějí podpor...