grep

Toon regels voor en na de wedstrijd via Grep

Toon regels voor en na de wedstrijd via Grep

Grep is veel gebruikt in Linux-systemen bij het werken aan sommige bestanden, het zoeken naar een specifiek patroon en nog veel meer. Deze keer gebruiken we het grep-commando om de regels voor en na het overeenkomende trefwoord weer te geven dat in een specifiek bestand wordt gebruikt. Voor dit doel gebruiken we de vlag "-A", "-B" en "-C" in onze zelfstudiegids. U moet dus elke stap uitvoeren voor een beter begrip. Zorg ervoor dat je Ubuntu 20 . hebt.04 Linux-systeem geïnstalleerd.

Ten eerste moet je je Linux-opdrachtregelterminal openen om aan grep . te gaan werken. U bevindt zich momenteel in de Home-directory van uw Ubuntu-systeem direct nadat de opdrachtregelterminal is geopend. Dus, probeer alle bestanden en mappen in de homedirectory van je Linux-systeem op te sommen met behulp van de onderstaande ls-opdracht, en je krijgt alle. U kunt zien, we hebben enkele tekstbestanden en enkele mappen erin vermeld.

ls

Voorbeeld 01: '-A' en '-B' gebruiken

Van de hierboven getoonde tekstbestanden zullen we enkele hiervan bekijken en proberen het grep-commando erop toe te passen. Laten we het tekstbestand "one" openen.txt" eerst met behulp van de populaire "cat" -opdracht zoals hieronder:

$ kat één.tekst

We zullen eerst enkele specifieke woordovereenkomsten in dit tekstbestand zien met behulp van de grep-opdracht zoals hieronder:. We zoeken naar het woord "wij" in het tekstbestand "one.txt" met behulp van grep-instructie. De uitvoer toont twee regels uit het tekstbestand met "wij" erin.

$ grep we one.tekst

Dus in dit voorbeeld zullen we de regels voor en na de specifieke woordovereenkomst in sommige tekstbestanden tonen. Dus met hetzelfde tekstbestand “one.txt" hebben we het woord "wij" vergeleken terwijl we de 3 regels ervoor weergaven, zoals hieronder. De vlag "-B" staat voor "Before". De uitvoer toont slechts 2 regels voor de specifieke woordregel omdat het bestand niet meer regels heeft voor de regel van een specifiek woord. Het toont ook die regels waarin dat specifieke woord aanwezig is.

$ grep -B 3 we one.tekst

Laten we hetzelfde trefwoord "we" uit dit bestand gebruiken om de 3 regels weer te geven na de regel met het woord "we". De vlag "-A" stelt "After" voor. De uitvoer toont opnieuw slechts 2 regels omdat het niet meer regels in het bestand heeft.

$ grep -A 3 we one.tekst

Laten we dus een nieuw zoekwoord gebruiken om te matchen en de regels of rijen weergeven voor en na de regel waarin het ligt. Dus we hebben het woord "kan" gebruikt om te matchen. De regelnummers zijn in dit geval hetzelfde. De 3 regels na het overeenkomende woord "can" zijn hieronder weergegeven met het grep-commando.

$ grep -A 3 kan één.tekst

U kunt de uitvoer vóór de regels van een overeenkomend woord zien met het trefwoord "kan". Het toont daarentegen slechts twee regels voor de regel van het overeenkomende woord omdat er geen regels meer voor staan.

$ grep -B 3 kan één.tekst

Voorbeeld 02: '-A' en '-B' gebruiken

Laten we een ander tekstbestand nemen, "twee".txt," uit de homedirectory en geef de inhoud weer met behulp van de onderstaande "cat"-opdracht.

$ kat twee.tekst

Laten we 5 regels weergeven voor het woord "Meeste" uit het bestand "twee".txt" met behulp van het grep-commando. De uitvoer toont 5 regels voordat de regel een specifiek woord bevat.

$ grep -B 5 Meeste twee.tekst

Het grep-commando om de 5 regels na het woord "Most" uit het tekstbestand "two.txt" is hieronder gegeven.

$ grep -A 5 Meeste twee.tekst

Laten we het trefwoord wijzigen waarnaar moet worden gezocht change. We zullen deze keer "van" gebruiken als zoekwoord om te matchen. Toon de 2 regels voor het woord "van" uit het tekstbestand "twee".txt" kan worden gedaan met behulp van de onderstaande grep-opdracht. De uitvoer toont twee regels voor het trefwoord "van" omdat het twee keer in het bestand voorkomt. Dus de uitvoer bevat meer dan 2 regels.

$ grep -B 2 van twee.tekst

Nu worden de 2 regels van het bestand "twee" weergegeven.txt" na de regel die het trefwoord "of" bevat, kan worden gedaan met behulp van de onderstaande opdracht:. De uitvoer geeft weer meer dan 2 regels weer.

$ grep -A 2 of two.tekst

Voorbeeld 03: '-C' gebruiken

Een andere vlag, "-C" is gebruikt om de regels voor en na het overeenkomende woord weer te geven. Laten we de inhoud van het bestand “one.txt" met behulp van het cat-commando.

$ kat één.tekst

We kiezen 'samenleving' als zoekwoord om te matchen. De onderstaande grep-opdracht geeft de 2 regels voor en 2 regels na de regel weer die het woord "samenleving" bevat. De uitvoer toont één regel voor de specifieke woordregel en 2 regels erna.

$ grep -C 2 samenleving één.tekst

Laten we eens kijken naar de inhoud van bestand "twee".txt" met behulp van de onderstaande cat-opdracht.

$ kat twee.tekst

In deze illustratie gebruiken we 'gedichten' als zoekwoord. Voer hiervoor het onderstaande commando uit:. De uitvoer toont twee regels voor en twee regels na het overeenkomende woord.

$ grep -C 2 gedichten twee.tekst

Laten we nog een trefwoord gebruiken uit het bestand "twee".txt" om te matchen. We consumeren deze keer 'natuur' als sleutelwoord. Probeer dus de onderstaande opdracht terwijl u "-C" gebruikt als een vlag met het trefwoord "nature" uit het bestand "two.tekst". Deze keer heeft de uitvoer meer dan twee regels in de uitvoer. Omdat het bestand meer dan eens het woord "natuur" bevat, is dat de reden erachter. Het sleutelwoord 'natuur', dat eerst komt, heeft twee regels ervoor en twee regels erna. Terwijl de tweede overeenkwam met hetzelfde trefwoord, heeft 'natuur' twee regels ervoor, maar er staan ​​geen regels achter omdat het op de laatste regel van het bestand staat.

$ grep -C 2 gedichten twee.tekst

Conclusie

We zijn erin geslaagd de regels voor en na het specifieke woord weer te geven tijdens het gebruik van de grep-instructie.

Handige hulpmiddelen voor Linux-gamers
Als je graag games op Linux speelt, is de kans groot dat je apps en hulpprogramma's zoals Wine, Lutris en OBS Studio hebt gebruikt om de game-ervaring...
HD Remastered Games voor Linux die nog nooit eerder een Linux-release hebben gehad
Veel game-ontwikkelaars en uitgevers komen met HD-remaster van oude games om de levensduur van franchise te verlengen, fans die compatibiliteit met mo...
Hoe AutoKey te gebruiken om Linux-spellen te automatiseren
AutoKey is een hulpprogramma voor desktopautomatisering voor Linux en X11, geprogrammeerd in Python 3, GTK en Qt. Met behulp van de scripting- en MACR...