Předpoklady:
Ujasněte si, že máte nainstalovanou a nakonfigurovanou jakoukoli distribuci Linuxu. Používáme Ubuntu 20.04 Systém Linux k implementaci tohoto tématu. Na druhou stranu musíte mít také práva uživatele root. Otevřete příkazový terminál a začněte pracovat.
Příklad 01:
Když otevřete příkazový terminál, jste aktuálně na Ubuntu 20.04 Domovský adresář systému Linux. Přejdeme do adresáře Dokumenty. K tomu musíte použít níže uvedený příkaz „cd“ v příkazovém prostředí, spolu s adresářovou cestou.
$ cd ~ / Dokumenty
Nyní jste v adresáři Documents vašeho systému Linux. Vytvořme tři nové soubory v adresáři Documents. Chcete-li vytvořit nové soubory textového typu, zkuste v prostředí níže uvedeného dotykového příkazu následovaný názvem nového souboru. Můžete vidět, že jsme vytvořili tři soubory s názvem „jeden.txt, “„ nový.txt, “a„ test.txt.“
$ dotkněte se jednoho.txt$ touch nové.txt
$ dotykový test.txt
Jak je vidět na obrázcích níže, musíte do každého souboru zvlášť přidat textová data nebo informace. Nyní uložte všechny soubory a zavřete.
Nyní se vraťte k terminálu a uveďte všechny soubory a složky uvedené v adresáři Documents. Proveďte jednoduchý příkaz „ls“, jak je uvedeno níže. Budete mít výstup všech souborů a složek lhaných v adresáři Dokumenty. Můžete vidět, že jsou zde také nově vytvořené a aktualizované textové soubory.
$ ls
Nyní je řada na nás, abychom vyzkoušeli nějaký příkaz grep -R v adresáři Documents a jeho souborech nebo složkách. Při použití jednoho klíčového slova nebo jedinečného slova použijeme příkaz grep -R k vyloučení adresářů. Budeme mít příkaz, který prohledá dané slovo ze všech souborů umístěných ve složce Documents kromě jednoho adresáře, který byl v příkazu zadán k vyloučení. Vyloučíme tedy adresář „Wao“, který je aktuálně v adresáři Documents. Zkuste tedy příkaz grep níže, abyste vyloučili adresář „Wao“ spolu s příznakem -R, který byl použit pro rekurzivní funkci, a „Aqsa“ bylo použito jako klíčové slovo, které má být prohledáno v souborech. Výstup na snímku níže ukazuje text ze dvou souborů, „test.txt “a„ nové.txt, “který má ve svých datech text„ Aqsa “a adresář„ Wao “nebyl zkontrolován kvůli vyloučení v příkazu. Adresář „Wao“ však obsahuje také některé textové soubory, u kterých je třeba se vyhnout kontrole.
$ grep -exclude-dir „Wao“ -R „Aqsa“
Podívejme se na oba soubory. Vyzkoušejte příkaz cat a podívejte se na soubor „nový.txt ”obsahuje klíčové slovo“ Aqsa.“
$ kočka nová.txt
Druhý soubor „test.txt, obsahující klíčové slovo „Aqsa,“ byl zobrazen pomocí příkazu cat níže.
$ kočičí test.txt
Nyní vyloučme stejný adresář „Wao“ ze složky Documents pomocí jiného klíčového slova „brave“, pokud leží v jakémkoli souboru. Zkuste tedy příkaz grep níže a adresář vyloučte, jak je uvedeno níže. Výstupní obrázek ukazuje dva shodné výstupy pro klíčové slovo „statečný“ ve dvou souborech, „test“.txt “a„ jeden.txt.“
$ grep -exclude-dir „Documents / Wao“ -R „statečný.“
Můžete vidět soubor „jeden.txt “obsahuje klíčové slovo„ statečný “pomocí příkazu cat.
$ kočka jedna.txt
Výstup níže ukazuje soubor „test.txt, který obsahuje klíčové slovo „statečný“ s využitím instrukcí pro kočky.
$ kočičí test.txt
Příklad 02:
Přeskočme do podadresáře „Wao“ složky Documents pomocí příkazu „cd“ v shellu.
$ cd ~ / Documents / Wao
Vytvořme tři nové soubory, “bin.txt, “„ měl.txt, “a„ sek.txt “v adresáři„ Wao “při použití dotykového příkazu uvedeného níže. Přidejte textová data do všech souborů, uložte je a poté zavřete.
$ dotykový koš.txt$ touch měl.txt
$ touch sec.txt
Vymenujme všechny adresáře pomocí příkazu „ls“, jak je uvedeno níže. Najdete v něm všechny tři nově vytvořené soubory.
$ ls -a
Zkusme stejnou instrukci grep ve vašem příkazovém terminálu, abychom vyloučili adresář „Wao“, zatímco použijeme jiné klíčové slovo „I“ jako shodu, jak je uvedeno níže.
$ grep -exclude-dir „Documents / Wao /“ -R „I“Nyní výstup tohoto příkazu zobrazuje klíčové slovo „I“ v souborech uložených ve složce Documents, zatímco adresář „Wao“ byl ignorován pomocí klíčového slova „exclude-dir“.
Nyní vyloučíme stejný adresář „Wao“ pomocí jiného klíčového slova „rimsha“ z příkazu grep zobrazeného níže v terminálu. Výstupní snímek neukazuje žádný výstup, protože klíčové slovo „Rimsha“ nebylo nalezeno v žádném ze souborů umístěných ve složce Dokumenty.
$ grep -exclude-dir „Documents / Wao“ -R „rimsha“
Příklad 03:
Pojďme nejprve přejít do složky Dokumenty pomocí níže uvedeného příkazu „cd“.
$ cd ~ / Dokumenty
Vymenujme všechny soubory a složky adresáře Dokumenty pomocí níže uvedeného příkazu 'ls'. Výstup zobrazuje některé textové a další soubory spolu s jedním podadresářem „Wao.“
$ ls
Použijeme stejný příkaz grep k vyloučení adresáře „Wao“ z této složky pomocí klíčového slova „Aqsa“ ve vlajce. Výstup zobrazuje čtyři textové soubory, které mají ve svém textu slovo „Aqsa“, zatímco adresář „Wao“ byl vyloučen a nebyl zkontrolován.
$ grep -exclude-dir „Wao“ -R „Aqsa“
Závěr:
Používání Ubuntu 20.04, už chápeme, jak a kdy použít příkaz grep -R. Příkaz grep je velmi univerzální a pomáhá najít text vložený do stovek dokumentů.