Anonim

A globális reguláris kifejezés nyomtatás vagy csak a grep az Unix és Linux rendszerek egyik legszélesebb körű és leggyakoribb parancsa. A parancs egy vagy több bemeneti fájlt és a megfelelő sorokat keres. Ennek eredményeként kap egy standard kimenetet a megfelelő sorokkal.

Ha nem ad meg fájlt, akkor a grep a beolvasáshoz a szokásos bemenetet használja, és ez valószínűleg egy másik parancs kimenete lesz. Összességében a grep egyértelmű szintaxist tartalmaz, akár fájlnévvel, akár anélkül használja.

Ez a cikk gyors áttekintést nyújt a grep szintaxisáról és néhány alapparancsról, amelyeket a fájlnévvel vagy anélkül használhat.

Mielőtt elkezded

Az összes grep-parancs ugyanazt a szintaxist követi, és minden paraméternek van egy meghatározott funkciója. Itt van a mintasor:

grep MINTA

Számos opciót használhat a grepben a parancs kimenetének vezérléséhez, és a szám nullán kezdődik. A PATTERN jelöli az alkalmazni kívánt keresési mintát. Ami a FÁJL-t illeti, itt kerül a fájlnév vagy -nevek, de a paramétert nullára lehet állítani.

Karakterlánc keresés a parancskimenetben

Mint jeleztük, nem kell külön bemeneti fájlokat használni. Egy másik parancs kimenete használható a grepben olyan sorok elérésére, amelyek pontosan megfelelnek a mintának. Ez felhasználható annak meghatározására, hogy mely folyamatok aktívak a rendszeren. Ez a mintaparancs szintaxisa:

$ ps -ef | grep www-data

A kapott outputnak így kell kinéznie:

www-data 18247 12675 4 16:00? 00:00:00 php-fpm: medence www
gyökér 18272 17714 0 16:00 pont / 0 00:00:00 grep –szín = automatikus –kizárás-dir = .bzr –kizárás-dir = CVS –kizárás-dir = .git –kizárás-dir = .hg –kizárás- dir = .svn www-data
www-data 31147 12770 0 okt. 22? 00:05:51 nginx: munkavállalói folyamat
www-data 31148 12770 0 okt. 22? 00:00:00 nginx: gyorsítótár-kezelő folyamat

A grep folyamatokat jellemző parancssort ki lehet zárni. Ehhez a $ ps -ef | fájlt kell használnia grep www-data | grep -v grep parancs.

Grep Word Search

A grep parancsokkal kereshet konkrét szavakat a rendszer fájljaiban. Valójában nem kell teljes szót beírni. Használhatja például a gnu alkalmazást, és a parancs kiadja az összes szót, amelyben ez a három betű található. A parancs szintaxisa:

$ grep gnu / usr / share / szavak

A parancs végrehajtása után a kimenetnek így kell kinéznie:

cygnus
gnú
interregnum
lgnu9d
lignum
nagy családi palack
Magnuson
tőzegmoha
szárnyasdió

Másrészt kereshet csak az adott szót vagy betűsorozatot, és kizárhat mindent. Ehhez hozzá kell adnia -w vagy –word - regexp fájlt a szintaxishoz. Ebben az esetben a példa parancs így néz ki - $ grep -w gnu / usr / share / words .

Megjegyzés: Nyelvtani szempontból néhány parancs végén áll. A grep-hez nem szükséges az írásjel. A parancs lemásolásakor / beillesztésekor zárja ki.

A Grep kisbetű érzékeny?

Alapértelmezés szerint az összes grep-parancs kis- és nagybetűk között érzékeny. Ez azt jelenti, hogy a kis- és nagybetűk használata megváltoztatja a parancsot. A parancssorba azonban hozzáadhatja - i ( - figyelmen kívül hagyhatja a kis- és nagybetűket ), és lehetővé teheti a rendszer számára a kis- és nagybetűs szavak keresését.

Például a beviteli parancs a következőképpen néz ki: $ grep -i Zebra / usr / share / szavak . Lehetővé teszi a kimenet számára, hogy megfeleljen a kis- és nagybetűk bármilyen kombinációjának, amikor zebrát keres.

Sorszámok

A –line-szám opcióval vagy csak –n segítségével határozhatja meg a sorok számát egy adott keresési mintának megfelelő karakterlánccal. Ennek eredményeként kap egy standard kimenetet, amelynek sorszáma előtte van.

A pontos parancs így néz ki: $ grep -n 10000 / etc / services . Végrehajtás után a kimenet biztosítja az összes egyezést, amelyet 10000 soron talál. Nézze meg az alábbi mintát:

10423: ndmp 10000 / tcp
10424: ndmp 10000 / udp

Fájlok mappákban

Csillagjegyet a grep parancs mögé helyezhet a fájlnév helyett. A gnu kritériumok ismételt felhasználásával a parancs a következőképpen néz ki: $ grep gnu *, és a kimenet felsorolja a gnu- t tartalmazó fájlokat. Fontos megjegyezni, hogy ez a fajta parancs egy sort eredményez.

Megjegyzés: A grep esetén a sor olyan karakter sorozatra utal, amely egy meghatározott szünetig fut. Hacsak nem finomítja a keresést, a kimenet teljes információs bekezdéseket tartalmazhat.

Tegye meg a következő lépést Grep-szel

Ez az útmutató csak azt a felületet megkarcolja, amit tehet a grep-rel. Időbe telhet, amíg megkapja az esélyeket és a végeket, de a szintaxis meglehetősen egyszerű alapelvet követ. És bizonyos gyakorlatokkal finomítani tudja a kereséseket, akár fájlnévvel, akár anélkül.

Hogyan grep fájlnév nélkül