grep

Ako môžem použiť špeciálne znaky v príkaze Grep?

Ako môžem použiť špeciálne znaky v príkaze Grep?

Funkciou grep je prehľadať text a aplikovať na ne podmienky. Používa sa na vyhľadávanie vo viac ako jednom súbore. Grep dokáže v ňom identifikovať textové riadky a rozhodnúť sa ďalej aplikovať rôzne akcie, ktoré zahŕňajú rekurzívnu funkciu alebo obrátiť vyhľadávanie a zobraziť číslo riadku ako výstup atď. Špeciálne znaky sú regulárne výrazy používané v príkazoch na vykonávanie niekoľkých akcií, ako sú #,%, *, &, $, @ atď. V tomto článku budeme používať špeciálne znaky. Grep povoľuje argumenty ako reťazce, ktoré sú určené ako regulárny výraz. Má tiež schopnosť nahradiť v ňom slovo alebo frázu. Špeciálne znaky sa nepoužívajú iba ako názov súboru, ale aj ako údaje v súbore.

Predpoklad

Na jeho vykonanie potrebujeme operačný systém Linux. Aby mohol Linux bežať, musíme mať predinštalovaný virtuálny box.  Po úspešnej inštalácii systému Linux ho nakonfigurujete poskytnutím niektorých užitočných informácií. Ďalším krokom je vstup na domovskú stránku systému Ubuntu Linux. Poskytnutím používateľského mena a hesla budete mať prístup ku všetkým aplikáciám -typectrl + alt + t na otvorenie terminálu.

Pomocou „$“

Aby ste pochopili koncept špeciálneho znaku „$“ v príkaze grep, musíte mať súbor s názvom file21.TXT. „$“ Sa používa na zobrazenie všetkých riadkov, ktoré majú znak definovaný za „$“, čo je bodkočiarka, t.j.e., '; $'. Všetok relevantný obsah môžeme zobraziť pomocou príkazu cat.

$ Cat súbor21.TXT

Teraz použijeme znak v nasledujúcom príkaze, aby sme pochopili, ako to funguje. „-E“ pomáha zobraziť presnú zhodu v súbore.

$ grep -e '; $' súbor21.TXT

Vyššie uvedený výstup zobrazuje všetky riadky v súbore, ktoré majú bodkočiarku „;“ nakoniec. Príslušný výsledok je zvýraznený oproti každému riadku.

Použitím"

Toto je jednoduchý príklad regulárneho výrazu. V ľubovoľnom výroku grep sa jednoduché úvodzovky používajú, keď sa chceme zhodovať s akýmkoľvek slovom v súbore. Podobne sme spomenuli tento príklad, aby bol užívateľ presný a celkom zrozumiteľný.

$ grep -e súbor 'Aqsa' 23.TXT

Výstup bude obsahovať všetky vety obsahujúce slovo Aqsa, pretože sme toto slovo hľadali v príkaze.

Použitím []

Hranaté zátvorky sa používajú na uvedenie slova, ktoré sa má vyhľadávať medzi dvoma pármi hranatých zátvoriek. Za týmito hranatými zátvorkami nasleduje v príkaze znak „*“. Okrem toho sme v príkaze použili príkaz -n -I -w -e na presné získanie výstupu s číslom riadku, ignorovanie citlivosti malých a veľkých písmen a získanie presnej zhody, ktorá sa v súbore vyskytla viackrát. Budeme používať súbor fileg.txt na zobrazenie údajov v ňom prítomných. -E sa používa ako rozšírený regulárny výraz, kedykoľvek použijeme akýkoľvek znak v príkaze.

$ Cat súbor.TXT

Teraz použijeme nasledujúci dotaz.

$ grep -noiwe -e '[] * súbor [] *' súbor.TXT

Kde súbor.txt je dotknutý súbor. Výstup zobrazuje slovo „the“ všade, kde je v súbore, spolu s číslom riadku. Zobrazené je iba slovo, ale nie celá veta, pretože na zobrazenie jeho výskytu a presnosť zobrazenia sme použili -w a -e.

Použitím '-'

'-' sa používa v príkaze na nájdenie zhody v súbore. -niw opäť predstavuje rovnaký význam, aký je opísaný v príklade uvedenom vyššie. -m zobrazuje prvý riadok obsahujúci slovo v existujúcom súbore.

$ grep -niw -m 3 „technický“ súbor1.TXT

Na výstupe sú riadky obsahujúce slovo technický. Je tiež zobrazené číslo riadku so slovom „technický“, ktoré je v bodoch 1 a 4.

Používanie „|“

Tento špeciálny znak sa používa mnohými spôsobmi. Spravidla sa používa ako operátor ALEBO na voľbu medzi dvoma krstnými menami. V príkaze grep sa používa na prácu tak, aby načítal záznam jedného alebo oboch slov oddelených znakom „|“. Tu príklad ukazuje načítanie dvoch slov nachádzajúcich sa vo všetkých súboroch adresára.

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

Teraz výstup zobrazuje obe slová prítomné buď v jednom súbore, alebo v rôznych súboroch. Ako sme už spomenuli v adresári, dostaneme tiež názvy súborov.

Použitie znaku „^ ()“

Tu '^ ()' pôsobí rekurzívne v porovnaní s vyššie uvedeným príkladom.„^“ Zobrazuje iba jednu z dvoch daných možností, t.j.e., Aqsa a dobré, to je na prvom mieste v každom súbore. Výstup bude obsahovať iba Aqsa. Egrep je rozšírený regulárny výraz.

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

Pomocou ^ $

Zobrazuje zhodu prázdnych / prázdnych reťazcov na konci riadku. Ak je v texte medzera, stiahne ju nasledujúci príkaz.

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

Budú prehľadané všetky textové súbory. Výstup bude obsahovať názvy súborov a tiež číslo riadku, ktorý obsahuje prázdne miesto v súbore. V príkaze sme použili -n.

Použitím []

Tieto dve zátvorky ukazujú, ako fungujú špeciálne znaky. [] obsahuje slovo, ktoré sa má vyhľadať. Zároveň opíšte zhodu v súbore N-krát. V príklade postupu sme použili 2, ktoré zobrazuje výskyt všetkých dvoch možných slov zadaného slova v príkaze, ktorý je „the“.

$ egrep '[the] 2' / home / aqsayasin / súbor *

Záver

V článku, ako sme už spomenuli, sme diskutovali o niekoľkých základných príkladoch, ktoré vysvetľujú koncept špeciálnych znakov v príkaze. Vytvorili sme súbor a potom načítali údaje, ktoré sa v ňom nachádzajú, pomocou príkazu grep. Dúfam, že po prečítaní tohto článku budete oboznámení so špeciálnymi znakmi, ktoré sme v našom článku použili.

Hry 5 najlepších arkádových hier pre Linux
5 najlepších arkádových hier pre Linux
V dnešnej dobe sú počítače vážne stroje používané na hranie hier. Ak nemôžete dosiahnuť nové najvyššie skóre, budete vedieť, čo tým myslím. V tomto pr...
Hry Battle For Wesnoth 1.13.6 Vývoj uvoľnený
Battle For Wesnoth 1.13.6 Vývoj uvoľnený
Battle For Wesnoth 1.13.6 vydané minulý mesiac, je šiestym vývojovým vydaním v 1.13.séria x a prináša množstvo vylepšení, najmä používateľského rozhra...
Hry Ako nainštalovať League Of Legends na Ubuntu 14.04
Ako nainštalovať League Of Legends na Ubuntu 14.04
Ak ste fanúšikom League of Legends, potom je to pre vás príležitosť otestovať spustenie League of Legends. Upozorňujeme, že program PlayOnLinux podpor...