Tekst filteren met `grep`
Leer `grep` gebruiken voor krachtige patroonherkenning en het filteren van tekst in bestanden of opdrachtuitvoer.
Tekst filteren met `grep` is een gratis Beheersing van de Linux-opdrachtregel-les op CoddyKit. Dit is les 2 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Beheersing van de Linux-opdrachtregel. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Beheersing van de Linux-opdrachtregel bevat in totaal 4 lessen.
Wat is `grep`?
Welkom in de wereld van tekstfiltering! In deze les leer je werken met het krachtige commando grep.
grep staat voor Global Regular Expression Print. Het is een krachtig opdrachtregelhulpprogramma waarmee je in tekstgegevensverzamelingen zoekt naar regels die overeenkomen met een reguliere expressie.
- Je vindt er snel specifieke informatie mee in bestanden.
- Je filtert er uitvoer van andere opdrachten mee.
- Het is onmisbaar voor systeembeheer, programmeren en gegevensanalyse.
Je eerste zoekopdracht met `grep`
De eenvoudigste toepassing van grep is zoeken naar een specifiek woord of patroon in een bestand.
De algemene syntaxis is: grep "pattern" filename
We zoeken alle regels met het woord "error" in een logbestand. Stel dat my_log.txt verschillende systeemberichten bevat.
echo "System started.
Error: Disk full.
Warning: Low memory.
Error: Network down." > my_log.txt
grep "Error" my_log.txtIn meerdere bestanden zoeken
grep is niet beperkt tot één bestand. Je kunt in meerdere bestanden tegelijk zoeken, of zelfs in alle bestanden van een map.
Als je in meerdere bestanden wilt zoeken, zet je ze eenvoudig achter het patroon. Gebruik een jokerteken zoals * om in alle bestanden van de huidige map te zoeken.
We zoeken naar "failed" in alle .log-bestanden.
echo "Login success" > auth.log
echo "Login failed" > secure.log
echo "System OK" > kernel.log
grep "failed" *.logHoofdletterongevoelig zoeken (`-i`)
Standaard maakt grep onderscheid tussen hoofdletters en kleine letters. Dat betekent dat "Error" verschilt van "error" en "ERROR".
Gebruik de optie -i (voor hoofdletterongevoelig zoeken) om hoofdletterongevoelig te zoeken.
Zoek naar alle exemplaren van "apple", ongeacht het gebruik van hoofdletters.
echo "Apple is good.
I like apples.
APPLES are red." > fruit.txt
grep -i "apple" fruit.txtVinden wat niet overeenkomt (`-v`)
Soms wil je alle regels zien die een bepaald patroon niet bevatten. Dit heet een omgekeerde overeenkomst.
De optie -v (voor omgekeerd zoeken) doet precies dat. Hiermee worden alle regels weergegeven die niet overeenkomen met het opgegeven patroon.
We filteren de regels met "comment" uit een script.
echo "# This is a comment
print("Hello")
# Another comment
x = 10" > script.py
grep -v "#" script.pyOvereenkomsten tellen (`-c`)
In plaats van de overeenkomende regels weer te geven, wil je misschien alleen weten hoeveel regels met je patroon overeenkomen.
Met de optie -c (voor tellen) laat je grep alleen het aantal regels afdrukken dat met het patroon overeenkomt.
Hoeveel regels bevatten "warning" in ons systeemlogboek?
echo "Info: System started.
Warning: Low disk space.
Info: User logged in.
Warning: High CPU usage." > system.log
grep -c "Warning" system.logOvereenkomsten vinden met regelnummers (`-n`)
Bij het opsporen van fouten of analyseren van een groot bestand kan het erg handig zijn om het exacte regelnummer van een overeenkomst te kennen.
De optie -n (voor regelnummers) geeft het regelnummer vóór elke overeenkomende regel weer.
We zoeken de regelnummers van "function" in een programmabestand.
echo "def setup():
print("Setting up")
def run_function():
pass
# Main part" > program.py
grep -n "function" program.py`grep` met standaardinvoer
Een van de krachtigste functies van grep is de mogelijkheid om met pijplijnen (|) te werken.
Je kunt de uitvoer van een opdracht via een pijplijn als invoer aan grep doorgeven. Zo kun je opdrachtuitvoer direct filteren.
We geven eerst een lijst van alle bestanden weer en filteren die vervolgens zodat alleen bestanden met de extensie .txt overblijven.
touch report.txt document.pdf image.jpg notes.txt
ls -l | grep ".txt"Korte controle over `grep`
Je hebt verschillende nuttige opties van grep geleerd. Test nu of je het begrijpt!
Neem een bestand met de naam server.log dat berichten bevat zoals "ERROR", "Error", "info" enzovoort.
Samenvatting: filteren met `grep`
Goed gedaan! Je beheerst nu de basis van grep voor het filteren van tekst.
Hier volgt een korte samenvatting van wat je hebt geleerd:
grep "pattern" filename: zoeken naar een patroon in een bestand.grep "pattern" *.log: in meerdere bestanden zoeken met jokertekens.-i: tijdens het zoeken geen onderscheid maken tussen hoofdletters en kleine letters.-v: de overeenkomst omkeren, zodat regels worden weergegeven die het patroon niet bevatten.-c: het aantal overeenkomende regels tellen.-n: regelnummers van overeenkomende regels weergeven.- Een pijplijn gebruiken met
|: uitvoer van andere opdrachten filteren.
Met deze opties is grep een bijzonder veelzijdig hulpmiddel om informatie uit de opdrachtregel te halen en te analyseren. Blijf oefenen!
Leer Beheersing van de Linux-opdrachtregel met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 12
- Lessen
- 48
Veelgestelde vragen
Is de les “Tekst filteren met `grep`” gratis?
Ja — de volledige tekst van “Tekst filteren met `grep`” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Beheersing van de Linux-opdrachtregel wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Beheersing van de Linux-opdrachtregel bevat in totaal 4 lessen.
Wat leer ik in “Tekst filteren met `grep`”?
Leer `grep` gebruiken voor krachtige patroonherkenning en het filteren van tekst in bestanden of opdrachtuitvoer. Je oefent met Beheersing van de Linux-opdrachtregel door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met Beheersing van de Linux-opdrachtregel te beginnen?
Ervaring vooraf is niet nodig. Beheersing van de Linux-opdrachtregel op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 4.
Hoe lang duurt de les “Tekst filteren met `grep`”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over Beheersing van de Linux-opdrachtregel?
Ja. Elke les over Beheersing van de Linux-opdrachtregel bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- Standaardstromen en omleiding
- Tekst filteren met `grep`
- Tekst bewerken met `sed` en `awk`
- Output combineren en sorteren met sort, uniq en cut