grep
A grep (neve a Global | Regular Expression | Print szavak kezdőbetűiből származik) parancssorból futtatható program, mely a paraméterként megadott fájlokban vagy a standard inputban megadott tartalomban keres reguláris kifejezések alapján. Első verzióját a Unix operációs rendszerhez írták. Ma a legtöbb Unix és Unix-szerű rendszernek, így a különböző Linux disztribúcióknak és a Mac OS X rendszereknek is része a grep. Windows rendszerekhez letölthető például a GNU grep a Cygwin részeként.
Használat
szerkesztésKeresés egyetlen fájlban
szerkesztésKeressük a tehén szót az A_tej_ára.txt szövegfájlban:
grep tehén A_tej_ára.txt
A grep ekkor kiírja azokat a sorokat a fájlból, amelyek tartalmazzák a tehén stringet. Ha a fájl valamely sora a TEHÉN vagy a Tehén stringet tartalmazza, akkor nem íródik a kimenetre, mert a grep alapértelmezésben kis- és nagybetű érzékeny (case-sensitive). Ezt a -i kapcsolóval lehet felülbírálni:[1]
grep -i tehén A_tej_ára.txt
Ebben az esetben akár a Tehén de akár a TehÉN string is egyezőnek számít.
Keresés teljes szóra
szerkesztésA -w (--word-regexp) kapcsolóval teljes szavakra is kereshetünk:[1]
grep -w tehén A_tej_ára.txt
A keresés listázza azokat a sorokat, amelyek a tehén szót tartalmazzák, de azokat nem, amelyekben például a tehéntej szó szerepel.
A -c (--count) kapcsolóval azt is megszámolhatjuk, hogy a keresett szó hány sorban fordul elő a fájlban:[2]
grep -w -c tehén A_tej_ára.txt
Keresés alkönyvtárakban
szerkesztésLehetséges a rekurzív keresés is egy adott könyvtárstruktúrában a -r kapcsolóval. Az alábbi példában a grep a tehén stringet tartalmazó sorokat keresi az Dokumentumok/ könyvtár alatti teljes struktúrában:[3]
grep -r tehén Dokumentumok/
A -l vagy --files-with-matches opció hatására csak az illeszkedő fájlok nevei kerülnek a kimenetre.[2] Az előző példát kiegészítve így használható:
grep -r -l tehén Dokumentumok/
Ezzel ekvivalens az alábbi írásmód:
grep -rl tehén Dokumentumok/
Szabályos kifejezések
szerkesztésA grep Reguláris kifejezéseket is tud értelmezni. Az alábbi példában a grep egyaránt megtalálja a Bivaly és a Bagoly szavakat a bemeneti fájlban, hiszen mindkettő illeszkedik az B...ly szabályos kifejezésre:
grep B...ly állatok.txt
Szabályos kifejezés segítségével sorok kezdete és sorok vége is detektálható. Az alábbi példa az olyan sorokat listázza, melyek úgy végződnek, hogy ,,ni".
grep "ni$" versek.txt
A nagy ,,Dzs" betűvel kezdődő sorokat listázza ki az alábbi példa
grep "^Dzs" mongolia.txt
Jegyzetek
szerkesztés- ↑ a b http://www.gnu.org/s/grep/manual/html_node/Matching-Control.html#Matching-Control Free Software Foundation, 2011. június 25.
- ↑ a b http://www.gnu.org/s/grep/manual/html_node/General-Output-Control.html#General-Output-Control Free Software Foundation, 2011. június 25.
- ↑ http://www.gnu.org/s/grep/manual/html_node/File-and-Directory-Selection.html#File-and-Directory-Selection Free Software Foundation, 2011. június 25.