A Linux grep
szövegszűrést biztosít. De bizonyos helyzetekben szükségünk lehet bővebb eszközre, hogy adott mintát találjunk adott szöveges fájlokban. Ennek az eszköznek a neve Extended Global Regular Expression Print
vagy egyszerűen egrep
. A egrep
kibővített funkciókat biztosít a szokásos grep
eszközzel szemben.
A egrep
parancs szintaxisa az alábbiak szerint néz ki.
egrep FLAG REGEX FILE
- A `FLAG` az `egrep`parancs néhány tulajdonságának megváltoztatására szolgál.
- `REGEX` a minta, amelyet regex formátumban szeretnénk keresni.
- `FILE` a fájl neve, amelyben keresni fogunk
Normál keresés
A egrep
parancsot használhatjuk normál szöveg keresésére, reguláris kifejezés megadása nélkül. Csak a keresni kívánt kifejezést kell megadnunk. Ebben a példában a /etc/passwd
.
$ egrep ismail /etc/passwd
Match Lines Contains Numeric Characters
Megadhatjuk a numerikus karaktereket a használatával, amely a 0 és 9 közötti numerikus értékek egyikét jelenti.
$ egrep ''/etc/passwd
Match Lines Contains Alphabet Characters
Az ábécé karaktereket is megadhatjuk a használatával a kisbetűs karakterek és a
használatával a nagybetűs karakterek esetében. Ebben a példában a nagybetűs karaktereket fogjuk megfeleltetni.
$ egrep ''/etc/passwd
Match All Lines Starting with Alphabet
A sorok elejét a ^
jellel tudjuk megfeleltetni. Ebben a példában az összes olyan sort megnézzük, ahol alfa karakterrel kezdődik.
$ egrep '^' myinput.py
Match All Lines Ending with Numeric
A sor végét a $
jellel adhatjuk meg. A következő parancs felsorolja az összes numerikus karakterrel végződő sort.
$ egrep '$' myinput.py
Match Caseinsenstive
egrep
alapértelmezés szerint a case senstive. A nagy- és kisbetű érzékenység azt jelenti, hogy a nagy- és kisbetűs karakterek különbözőek lesznek, például A
más, mint a
. Ha akarjuk, a -i
opcióval, mint zászlóval nagy- és kisbetű-érzékennyé tehetjük a találatunkat. A következő példa a következő szavak mindegyikére illeszkedik
- IsmaiL
- ismAIL
- ISMAIL
$ egrep -i 'ismail' myinput.py
.