grep

Jak mohu použít speciální znaky v příkazu Grep?

Jak mohu použít speciální znaky v příkazu Grep?

Funkce grep je prohledávat text a aplikovat na ně podmínky. Používá se pro vyhledávání ve více než jednom souboru. Grep může identifikovat textové řádky v něm a rozhodnout se dále použít různé akce, které zahrnují rekurzivní funkci nebo inverzní vyhledávání a zobrazit číslo řádku jako výstup atd. Speciální znaky jsou regulární výrazy používané v příkazech k provádění několika akcí, jako je #,%, *, &, $, @ atd. V tomto článku budeme používat speciální znaky. Grep umožňuje argumenty jako řetězce, které jsou specifikovány jako regulární výraz. Má také schopnost nahradit slovo nebo frázi. Speciální znaky se nepoužívají pouze jako název souboru, ale také jako data obsažená v souboru.

Předpoklad

K jeho provedení potřebujeme operační systém Linux. Aby Linux fungoval, musíme mít předinstalovaný virtuální box.  Po úspěšné instalaci systému Linux jej nakonfigurujete poskytnutím některých užitečných informací. Dalším krokem je vstup na domovskou stránku Ubuntu Linux. Zadáním uživatelského jména a hesla budete mít přístup ke všem aplikacím -typectrl + alt + t k otevření terminálu.

Pomocí „$“

Abyste pochopili koncept speciálního znaku „$“ v příkazu grep, musíte mít soubor s názvem file21.txt. „$“ Se používá k zobrazení všech řádků se znakem definovaným za „$“, což je středník, tj.E., '; $'. Veškerý relevantní obsah můžeme zobrazit pomocí příkazu cat.

$ Cat soubor21.txt

Nyní použijeme znak v následujícím příkazu, abychom pochopili, jak to funguje. „-E“ pomáhá zobrazit přesnou shodu v souboru.

$ grep -e '; $' soubor21.txt

Výše uvedený výstup zobrazuje všechny řádky v souboru, které mají středník „;“ na konci. Příslušný výsledek je zvýrazněn u každého řádku.

Použitím"

Toto je jednoduchý příklad regulárního výrazu. V libovolném příkazu grep se jednoduché uvozovky používají, když chceme najít shodu s libovolným slovem uvnitř souboru. Podobně jsme tento příklad zmínili, aby byl uživatel přesný a srozumitelný.

$ grep -e 'Aqsa' soubor23.txt

Výstup bude obsahovat všechny věty obsahující slovo Aqsa, protože jsme toto slovo prohledali v příkazu.

Použitím []

Hranaté závorky se používají ke zmínce slova, které se má hledat mezi dvěma páry hranatých závorek. Za těmito hranatými závorkami následuje v příkazu „*“. Navíc jsme v příkazu použili -n -I -w -e, abychom získali výstup s číslem řádku přesně, ignorovali jsme velikost písmen a získali přesnou shodu, která se v souboru vyskytla více než jednou. Budeme používat soubor fileg.txt pro zobrazení dat v něm obsažených. -E se používá jako rozšířený regulární výraz, kdykoli použijeme jakýkoli znak v příkazu.

$ Cat fileg.txt

Nyní použijeme následující dotaz.

$ grep -noiwe -e '[] * soubor [] *' soubor.txt

Kde soubor.txt je příslušný soubor. Výstup zobrazuje slovo „the“, ať je v souboru kdekoli, spolu s číslem řádku. Je zobrazeno pouze slovo, ale ne celá věta, protože k zobrazení jeho výskytu a přesnosti zobrazení jsme použili -w a -e.

Použitím '-'

'-' se v příkazu používá k nalezení shody v souboru. -niw opět představuje stejný význam, jaký je popsán ve výše uvedeném příkladu. -m zobrazuje první řádek obsahující slovo v existujícím souboru.

$ grep -niw -m 3 'technický' soubor1.txt

Výstup ukazuje řádky obsahující slovo technický. Zobrazí se také číslo řádku se slovem „technický“, které je v 1 a 4.

Pomocí „|“

Tento speciální znak se používá mnoha způsoby. Obecně se používá jako operátor OR k provedení volby mezi dvěma křestními jmény. V příkazu grep se používá k ovládání tak, že načte záznam jednoho nebo obou slov oddělených „|“. Zde příklad ukazuje načítání dvou slov přítomných ve všech souborech adresáře.

$ grep -I -E -w 'Aqsa | good' / home / aqsayasin / file *

Nyní výstup zobrazuje obě slova přítomná buď v jednom souboru, nebo v různých souborech. Jak jsme zmínili v adresáři, dostaneme také názvy souborů.

Pomocí '^ ()'

Zde '^ ()' působí rekurzivně ve srovnání s výše uvedeným příkladem.„^“ Zobrazuje pouze jednu ze dvou daných možností, tj.E., Aqsa a dobře, to je v každém souboru na prvním místě. Výstup bude obsahovat pouze Aqsa. Egrep je rozšířený regulární výraz.

$ egrep -I '^ (aqsa | good)' / home / aqsayasin / *.txt

Pomocí ^ $

Zobrazuje shodu prázdných / prázdných řetězců na konci řádku. Pokud je v textu nějaká mezera, je načtena následujícím příkazem.

$ grep -n '^ $' / home / aqsayasin / *.txt

Budou prohledány všechny textové soubory. Výstup bude obsahovat názvy souborů a také číslo řádku, které obsahuje prázdné místo v souboru. V příkazu jsme použili -n.

Použitím []

Tyto dvě závorky ukazují, jak speciální znaky fungují. [] obsahuje hledané slovo. Zároveň popište shodu v souboru N-krát. V příkladu postupu jsme použili 2, které ukazuje výskyt všech dvou možných slov zadaného slova v příkazu, kterým je „the“.

$ egrep '[the] 2' / home / aqsayasin / file *

Závěr

V článku, který jsme zmínili dříve, jsme diskutovali o několika základních příkladech, které vysvětlují koncept speciálních znaků v příkazu. Vytvořili jsme soubor a poté načetli přítomná data pomocí příkazu grep. Doufám, že po přečtení tohoto článku budete obeznámeni se speciálními znaky, které jsme v našem článku použili.

Jak změnit levé a pravé tlačítko myši na počítači se systémem Windows 10
Je úplnou normou, že všechna zařízení počítačových myší jsou ergonomicky navržena pro praváky. K dispozici jsou však myší zařízení, která jsou speciál...
Emulace kliknutí myší vznášením pomocí myši Clickless Mouse ve Windows 10
Používání myši nebo klávesnice ve špatném držení těla nadměrného používání může mít za následek mnoho zdravotních problémů, včetně napětí, syndromu ka...
Přidejte gesta myši do Windows 10 pomocí těchto bezplatných nástrojů
V posledních letech se počítače a operační systémy značně vyvinuly. Bývaly doby, kdy uživatelé museli procházet správci souborů pomocí příkazů. Stejně...