Ukaz Grep v Linuxu

Grep Command Linux



Ukaz Grep (globalni tisk z regularnimi izrazi) je najmočnejši in redno uporabljani pripomoček za ukazno vrstico Linux. Z Grepom lahko poiščete uporabne informacije tako, da določite iskalni kriterij. V določeni datoteki išče določen vzorec izraza. Ko najde ujemanje, natisne vse vrstice datoteke, ki se ujemajo z določenim vzorcem. To je priročno, ko morate filtrirati velike datoteke dnevnika.

V tem članku bomo z različnimi primeri razložili uporabo pripomočka grep. Debian 10 bomo uporabili za razlago ukazov in metod, omenjenih v tem članku.







Namestitev Grepa

Grep je nameščen v večini distribucij Linuxa. Če pa v vašem sistemu manjka, ga lahko namestite na naslednji način v terminalu:



$sudo apt-get install oprijem

Uporaba Grepa

Tu je osnovna skladnja ukaza grep. Začne se z grep, ki mu sledijo nekatere možnosti in kriteriji iskanja, nato pa se konča z imenom datoteke.



$oprijem [opcije]VZOREC[MAPA...]

Poiščite datoteke

Če želite poiskati ime datoteke v imeniku, ki vsebuje določen niz, lahko uporabite grep na naslednji način:





$ls - | oprijem -jazvrvica

Na primer, za iskanje imena datoteke, ki vsebuje niz preskus , ukaz bi bil:

$ls-| oprijem-jazpreskus

Ta ukaz navaja vse datoteke, ki vsebujejo niz preskus .



Poiščite niz v datoteki

Za iskanje niza v določeni datoteki lahko uporabite naslednjo sintakso ukaza:

$oprijemime datoteke niza

Na primer, za iskanje niza preskus v datoteki z imenom testna datoteka1 , uporabili smo naslednji ukaz :

$oprijemtestni dokument zaposlenih1

Zgornji izhod je vrnil stavek iz testna datoteka1 ki vsebuje niz zaposlenega .

Poiščite niz v več datotekah

Za iskanje niza v več datotekah lahko uporabite naslednjo sintakso ukaza:

$oprijemniz ime datoteke1 ime datoteke2

Na primer, za iskanje zaposlenega niza v naših dveh datotekah testfile1 in testfile2 smo uporabili naslednji ukaz:

$oprijemtestfile zaposlenih1 testfile2

Zgornji ukaz bo navedel vse vrstice, ki vsebujejo zaposlenega niza iz obeh datotek testfile1 in testfile2.

Uporabite lahko tudi nadomestni znak, če se vsa imena datotek začnejo z istim besedilom.

$oprijemime datoteke niza*

Če vzamemo zgornji primer, v katerem so bila naša imena datotek testfile1 in testfile2 , ukaz bi bil:

$oprijemtestni dokument zaposlenih*

Poiščite niz v datoteki tako, da prezrete velike in male črke niza

Najpogosteje ste se srečali s tem, ko iščete nekaj z uporabo grep, vendar ne dobite izpisa. To se zgodi zaradi neskladja velikih in malih črk med iskanjem niza. Tako kot v našem primeru, če pomotoma uporabimo Zaposleni namesto zaposlenega , vrne nič, saj naša datoteka vsebuje niz zaposlenega z malimi črkami.

Grepu lahko rečete, naj ignorira primer iskalnega niza, tako da uporabite zastavico –i za grepom, kot sledi:

$oprijem–I niz datoteke ime

Z zastavo –i bo ukaz izvedel iskanje, ki ni občutljivo na velike in male črke, ter vrnilo vse vrstice, ki vsebujejo niz zaposlenega v njem brez upoštevanja črk so velike ali male črke.

Iščite z regularnim izrazom

Če se pravilno uporablja, je regularni izraz zelo učinkovita lastnost v grepu. Z ukazom Grep lahko določite regularni izraz z začetno in končno ključno besedo. S tem vam ne bo treba vnesti celotne vrstice z ukazom grep. V ta namen lahko uporabite naslednjo skladnjo.

$oprijemzačetna ključna beseda.*ime datoteke

Na primer, za iskanje vrstice v datoteki z imenom testfile1, ki se začne z nizom this in konča s podatki o nizu, smo uporabili naslednji ukaz:

$oprijemto.*podatkovni testni datoteki1

Natisnila bo celotno vrstico iz testna datoteka1 ki vsebuje izraz (začetna ključna beseda this in podatki o zaključni ključni besedi).

Natisnite določeno število vrstic za/pred iskalnim nizom

Prav tako lahko prikažete določeno število vrstic v datoteki pred/po ujemanju niza skupaj s samim ujemajočim se nizom. V ta namen lahko uporabite naslednjo skladnjo:

$oprijem -TO <N>ime datoteke niza

Po ujemanju niza v podani datoteki, vključno z ujemajočim se nizom, bo prikazano N število vrstic.

Na primer, to je naša vzorčna datoteka z imenom testfile2 .

Naslednji ukaz bo prikazal ujemajočo se vrstico, ki vsebuje niz zaposlenega skupaj z dvema vrsticama za njim.

$oprijem-TO2–I testna datoteka zaposlenih2

Podobno za prikaz števila vrstic pred ujemajočim se nizom v določeni datoteki uporabite naslednjo skladnjo:

$oprijem -B <N>ime datoteke niza

Za prikaz števila vrstic okoli niza v določeni datoteki uporabite naslednjo skladnjo:

$oprijem -C <N>ime datoteke niza

Poudarjanje iskanja

Grep privzeto natisne ujemajoče se vrstice, vendar ne prikaže, kateri del vrstice se ujema. Če uporabite možnost -color z grep, bo prikazano, kje so v datoteki prikazani strojni nizi. Grep privzeto uporabite za označevanje rdeče barve.

V ta namen lahko uporabite naslednjo skladnjo:

$oprijemime datoteke niza-barva

Štetje števila tekem

Če želite šteti, kolikokrat se določena beseda pojavi v določeni datoteki, lahko uporabite možnost grep z –c. Vrne samo število ujemanj in ne samih ujemanj. V ta namen lahko uporabite naslednjo skladnjo:

$oprijem–C ime datoteke nizov

Takole izgleda naša vzorčna datoteka:

Sledi primer ukaza, ki je vrnil število besed mapa pojavil v datoteki z imenom testfile3 .

Obrnjeno iskanje

Včasih želite izvesti obratno iskanje, ki prikaže vse vrstice, razen tistih, ki se ujemajo z vnosom. Če želite to narediti, preprosto uporabite zastavico –v, ki ji sledi grep:

$oprijem–V ime datoteke nizov

Na primer za prikaz vseh vrstic v datoteki testfile3 ki ne vsebujejo besede računa, smo uporabili naslednji ukaz:

$oprijem–V testna datoteka računa3

Uporaba Grepa z drugimi ukazi

Grep lahko uporabite tudi za filtriranje zahtevanega rezultata iz različnih izhodov ukazov. Na primer iz apt - nameščen seznam ukaz izhod, želite najti samo pakete, ki so bili samodejno nameščeni, rezultat lahko filtrirate s pomočjo grep na naslednji način:

$apt-nameščenseznam| oprijemsamodejno

Podobno lscpu ponuja podrobne informacije o CPE -ju. Če vas zanimajo samo informacije o arhitekturi procesorja, jih lahko filtrirate z naslednjim ukazom:

$lscpu| oprijemArhitektura

V tem članku smo opisali nekaj primerov, ki vam bodo pomagali razumeti ukaze grep in njihovo uporabo v različnih pogojih. Močan oprijem ukaza grep lahko prihrani veliko časa, če si želite ogledati velike konfiguracijske ali dnevniške datoteke in skozi njih prelistati uporabne informacije.