Syntaxis
Grep [patroon] [bestand]Het patroon moet een woord of symbool zijn waarnaar in het bestand moet worden gezocht.
Vereisten
Voor een succesvolle werking van Grep in uw systeem, moet u het Linux-besturingssysteem hebben geïnstalleerd. Na de configuratie geeft u de gebruiker informatie om toegang te krijgen tot de geïnstalleerde applicaties. Ga vooruit naar de opdrachtregel van de terminal met behulp van een sneltoets ctrl+alt+T.
Grep-installatie
$ Sudo apt-get install grepAls je Grep nog niet hebt geïnstalleerd, kun je repositories van Grep in Ubuntu installeren met dit commando.
Grep-handleiding
Om meer te weten te komen over de Grep-commando's, kunnen we naar de man-pagina gaan. Grep is zeer veelzijdig en stelt gebruikers in staat om het op ingewikkelde manieren te gebruiken.
$ Man grep
Enkele voorbeelden die helpen bij het begrijpen van de functionaliteit van Grep zijn als volgt:
-Ik onderscheid in de zaak wordt genegeerd
-n print het regelnummer met output
-r doorzoek alle mappen op Linux
-kleur Geef het overeenkomende resultaat weer in kleuren
Toon alle bestanden
Als u al Ubuntu-bestanden hebt en deze wilt weergeven om alle bestandsnamen en extensies te zien, kunt u de volgende aangehaalde opdracht gebruiken.
$ lsU gebruikt gewoon de opdracht "ls" om alle gemaakte bestanden weer te geven.
Bestandscreatie indien nog niet bestaat
Om de functionaliteit van het zoeken naar een bestand te begrijpen, moeten we een bestand of bestanden hebben aangemaakt in ons systeem. Als u geen bestanden heeft, moet u bestanden maken. Bestand in Linux wordt op meer dan één manier gemaakt. Een eenvoudige methode die we gaan gebruiken, wordt als volgt beschreven:.
$ echo “tekst” > bestandsnaamHet echo-woord wordt gebruikt om gegevens in de Linux-opdracht weer te geven. Met deze opdracht kan de gebruiker een bestand maken en er gegevens in invoeren met dezelfde opdracht. In het specifieke voorbeeld is de naam van het bestand file20.tekst. Omdat het bestand tekst bevat, hebben we de bestandsextensie ”.tekst.”
Evenzo is een ander voorbeeld van het maken van bestanden dat we meer dan één bestand tegelijk hebben gemaakt.
Bestand zoeken door een woord te sorteren
Een bestand in Linux kan worden doorzocht via een woord. De syntaxis is redelijk begrijpelijk.
$ grep "technisch" bestand*Deze opdracht toont niet alleen de bestandsnaam, maar ook de gegevens die erin aanwezig zijn. In het huidige voorbeeld weet u dat het woord waarnaar we hebben gezocht, is gemarkeerd om aan te geven dat het in het bestand voorkomt. Bovendien wordt de bestandsnaam in eerste instantie geschreven, "Bestand*" betekent zoeken naar dat specifieke woord in alle bestanden. Zo helpt een enkel woord bij het verkrijgen van de uitvoer van bestandsnamen.
Zoek bestand met "-l"
"-l" is een commando dat wordt gebruikt om alleen de namen van bestanden in Linux weer te geven.
$ grep -l mijn bestand*Zoals het hierboven genoemde commando, is "mijn" een woord dat we in bestanden willen zoeken. Zoals we hierboven hebben beschreven, betekent "bestand*" zoeken in alle bestanden die in het systeem zijn gemaakt. We kunnen zien dat er vier bestandsnamen zijn met”.txt” extensies en een zonder extensie. Het betekent dat alle bestanden met bepaalde woorden worden getoond. We zullen verder zien hoe we specifiek een bestand kunnen doorzoeken door de extensie te vermelden.
Bestand zoeken op bestandsextensie
In het vorige voorbeeld hebben we gezien dat door het sorteren alle bestanden werden weergegeven. Maar om bestandsnamen van specifieke extensies te tonen, wordt onderstaand geschreven commando gebruikt “*.txt" staat voor het extensietype van een bestand, zodat alle bestanden van deze extensie moeten zijn.
Dit is basisdiscriminatie tussen de laatste twee voorbeelden die wordt vastgehouden via bestandsextensie.
$ grep -l "mijn" *.tekst
Zoek bestand met behulp van "-e"
Er kan een situatie bestaan waarin u bestanden wilt zoeken met behulp van meer dan één woord in verschillende bestanden. In dit soort scenario's moeten we de opdrachtregeloptie "-e" gebruiken. Als u bijvoorbeeld bestanden met drie specifieke woorden wilt doorzoeken, wordt deze opdracht aanbevolen. Zoeken wordt toegepast op alle bestanden die aanwezig zijn in uw huidige werkmap. Deze bestanden moeten een tekstextensie hebben, aangezien er een beperking van tekst is.
$ grep -e mijn -e aqsa -e technisch *.tekstGrep, Aqsa en Technical zijn drie woorden die zijn gebaseerd op het zoeken naar bestanden. Al deze woorden worden gemarkeerd waar deze woorden in bepaalde bestanden worden gevonden. Bestandsnamen worden vermeld in het begin. Er is een mogelijkheid dat er slechts een enkel woord in een bestand bestaat.
Zoekgegevens van een enkel bestand
In eerdere voorbeelden hebben we gezien dat de bestandsnaam wordt weergegeven met gegevens die in het bestand aanwezig zijn. Als we de gegevens in het bestand niet kennen of als een enkel woord te onthouden is, kunnen we in het bestand zoeken met behulp van het woord.
$ grep 'Aqsa'-bestand20.tekstIn dit voorbeeld haalt de opdracht hele gegevens op met behulp van een woord in het bestand.
Gegevens doorzoeken via meer dan een enkel bestand
Net als in het voorgaande voorbeeld, wordt hier gezocht op één woord maar in twee bestanden. Beide bestanden hebben een tekstextensie en het woord dat in beide bestanden voorkomt, is gemarkeerd. Bestandsnamen worden ook weergegeven zoals we hebben gezocht met behulp van beide bestandsnamen.
$ grep 'Aqsa'-bestand20.txt-bestand23.tekst
Toon bestaan van woorden in bestand
Om het bestaan of de aanwezigheid van de woorden in een bestand te controleren. De vlag "-q" wordt gebruikt en het werkt om bepaalde termen te zoeken in alle bestanden die "1" of "0" als uitvoer weergeven. Als "1" komt, betekent dit dat er geen overeenkomst is, maar als de overeenkomst is gevonden, wordt "0" weergegeven.
Conclusie
We hebben elk voorbeeld in detail uitgelegd om informatie voor gebruikers te verkrijgen. Het is van toepassing op het Grep-bestand dat moeiteloos zoekt op bestanden en binnen de bestanden in de Linux-omgeving.