De Linux-terminal staat vol met nuttige commando's, maar weinigen zijn zo krachtig als de schijnbaar eenvoudige grep. Het staat voor Wereldwijde reguliere expressie afdrukken, het afdrukken van de resultaten van door de gebruiker gedefinieerde systeemzoekopdrachten voor verzamelingen tekens.

grep is extreem krachtig, maar kan behoorlijk intimiderend zijn om te gebruiken, dus vandaag leer je enkele basisprincipes. Als u informatie zoekt in de documenten op uw computer, zoekt u meestal naar meerdere woorden tegelijk.

Dit artikel richt zich op het zoeken naar meerdere strings met grep en laat je een paar vergelijkbare tips en trucs zien voor het gebruik van grep in het algemeen.

Zoeken naar meerdere strings in grep

Voordat u aan de slag gaat, moet u ervoor zorgen dat u bekend bent met enkele basisprincipes van Linux. Eerst moet je een terminal kunnen openen - op de meeste systemen doe je dit met de toetsencombinatie Ctrl + Alt + T, of via het toepassingenmenu.

U moet ook bekend zijn met het verwijzen naar bestanden op pad met behulp van de terminal. Als u bijvoorbeeld het pad wilt invoeren voor een tekstdocument dat zich in een map met de naam

instagram viewer
het werk binnen in de huis map, zou u ernaar verwijzen met deze indeling:

~/work/textdocument.txt

Deze syntaxis, met behulp van de ~ en /, gevolgd door de locatie van het bestand in de thuismap, is wat u zult gebruiken om de grep-opdracht te tonen welke bestanden moeten worden doorzocht.

Laten we bijvoorbeeld zeggen dat u elk voorkomen van de woorden wilt vinden bij en Vanessa in een tekstdocument met het script uit de Bee-film uit 2007. De syntaxis ziet er als volgt uit:

grep -E 'bij| Vanessa' ~/work/beescript.txt

Wanneer u deze opdracht uitvoert, krijgt u een lijst terug van elke regel in het document die het woord bevat bij of het woord Vanessa.

Laten we dat commando een beetje opsplitsen:

grep -E

Het eerste deel voert het grep-commando uit met de -E optie. Dit leidt grep om te zoeken met behulp van een Euitgebreide reguliere expressie. Verschillende soorten reguliere expressies zijn een onderwerp voor een andere dag - en het beheersen van reguliere expressies vergt een levensduur, maar voor de doeleinden van deze zelfstudie kunt u met de opdracht vet-E in meerdere tekenreeksen zoeken met grep.

grep -E 'bij| Vanessa'

Het volgende deel bevat de strings waarnaar u wilt zoeken. Ze moeten tussen enkele aanhalingstekens staan, met een pijp tussen elk woord.

grep -E 'bij| Vanessa' ~/work/beescript.txt

Het laatste deel van de grep-aanroep neemt het pad naar het bestand dat u wilt doorzoeken; in dit geval het script van de Bee-film uit 2007.

grep Tips en trucs

Dit is een goed begin, maar er zijn veel praktische manieren om grep. te gebruiken. Nu je weet hoe je meerdere strings kunt vinden, volgen hier een paar commando's die die kracht naar een hoger niveau kunnen tillen:

grep -E 'bij| Vanessa' ~/work/beescript.txt ~/fun/mybeestory.txt

Dit lijkt erg op het vorige commando, behalve dat het alle regels met bee en Vanessa retourneert uit zowel het Bee-filmscript als uit mijn eigen Bee-verhaaltekstbestand.

Al deze vermeldingen van bijen worden echter behoorlijk moeilijk te lezen.

grep -E 'bij| Vanessa' ~/work/beescript.txt ~/fun/mybeestory.txt | minder

Dit neemt hetzelfde grep-commando en stuurt het naar minder. Dit opent de resultaten in een gemakkelijk te navigeren formaat, zodat u omhoog en omlaag kunt scrollen met de J en k toetsen en zoek in de resultaten met behulp van de / sleutel.

grep -E 'bij| Vanessa' ~/work/beescript.txt ~/fun/mybeestory.txt > beeresults.txt

Net als de less-opdracht, neemt de bovengenoemde opdracht de grep-resultaten en slaat ze allemaal op in een apart bestand. U kunt dit bestand vervolgens openen in uw favoriete teksteditor voor verdere bewerking.

Verwant: De referentie Cheatsheet voor Linux-opdrachten

Werken met grep in Linux

Hopelijk krijg je een idee van hoe krachtig grep kan zijn - en dit is niet eens de oppervlakte. Ga heen, en grep!

Hoe kreeg Grep zijn naam? De geschiedenis achter de creatie van Grep

Heb je je ooit afgevraagd waar Grep voor staat? Hier is het waargebeurde verhaal achter de oprichting van Grep.

Lees volgende

DeelTweetenE-mail
Gerelateerde onderwerpen
  • Linux
  • Linux-opdrachten
  • Linux Bash Shell
Over de auteur
Ian Buckley (219 artikelen gepubliceerd)

Ian Buckley is een freelance journalist, muzikant, performer en videoproducent en woont in Berlijn, Duitsland. Als hij niet aan het schrijven of op het podium staat, sleutelt hij aan doe-het-zelf-elektronica of code in de hoop een gekke wetenschapper te worden.

Meer van Ian Buckley

Abonneer op onze nieuwsbrief

Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve deals!

Klik hier om je te abonneren