grep

Mostra linee prima e dopo la corrispondenza tramite Grep

Mostra linee prima e dopo la corrispondenza tramite Grep

Grep è stato ampiamente utilizzato nei sistemi Linux quando si lavora su alcuni file, alla ricerca di un modello specifico e molti altri. Questa volta, stiamo usando il comando grep per visualizzare le righe prima e dopo la parola chiave corrispondente utilizzata in alcuni file specifici. A questo scopo, utilizzeremo i flag "-A", "-B" e "-C" in tutta la nostra guida tutorial. Quindi, devi eseguire ogni passaggio per una migliore comprensione. Assicurati di avere Ubuntu 20.04 Sistema Linux installato.

Innanzitutto, devi aprire il terminale della riga di comando di Linux per iniziare a lavorare su grep. Sei attualmente nella directory Home del tuo sistema Ubuntu subito dopo l'apertura del terminale della riga di comando. Quindi, prova a elencare tutti i file e le cartelle nella directory principale del tuo sistema Linux usando il comando ls sottostante e otterrai tutto. Puoi vedere, abbiamo alcuni file di testo e alcune cartelle elencate al suo interno.

ls

Esempio 01: utilizzo di '-A' e '-B'

Dai file di testo sopra mostrati, daremo un'occhiata ad alcuni di questi e proveremo ad applicare il comando grep su di essi. Apriamo il file di testo “one.txt" prima usando il popolare comando "cat" come sotto:

$ gatto uno.TXT

Vedremo prima alcune corrispondenze di parole specifiche in questo file di testo usando il comando grep come di seguito. Stiamo cercando la parola "noi" nel file di testo "uno.txt" usando l'istruzione grep. L'output mostra due righe del file di testo che contengono "noi".

$ grep noi uno.TXT

Quindi, in questo esempio, mostreremo le righe prima e dopo la corrispondenza di parole specifica in alcuni file di testo. Quindi, usando lo stesso file di testo "one.txt" abbiamo abbinato la parola "noi" visualizzando le 3 righe precedenti come di seguito. La bandiera “-B” sta per “Prima”. L'output mostra solo 2 righe prima della riga di parola specifica perché il file non ha più righe prima della riga di una parola specifica. Mostra anche quelle righe in cui è presente quella parola specifica.

$ grep -B 3 noi uno.TXT

Usiamo la stessa parola chiave "noi" da questo file per visualizzare le 3 righe dopo la riga che hanno la parola "noi". La bandiera “-A” presenta “Dopo”. L'output mostra di nuovo solo 2 righe perché non ha più righe nel file.

$ grep -A 3 noi uno.TXT

Quindi, usiamo una nuova parola chiave da abbinare e mostriamo le righe o le righe prima e dopo la riga in cui si trova. Quindi abbiamo usato la parola "can" per essere abbinati. I numeri di riga sono gli stessi in questo caso. Le 3 righe dopo la parola corrispondente "can" sono state visualizzate di seguito utilizzando il comando grep.

$ grep -A 3 può uno.TXT

Puoi vedere l'output mostra prima delle righe di una parola abbinata usando la parola chiave "can". Al contrario, mostra solo due righe prima della riga della parola corrispondente perché non ci sono più righe prima di essa.

$ grep -B 3 può uno.TXT

Esempio 02: utilizzo di '-A' e '-B'

Prendiamo un altro file di testo, “due.txt", dalla directory home e visualizzarne il contenuto utilizzando il comando "cat" sottostante.

$ gatto due.TXT

Mostriamo 5 righe prima della parola “Most” dal file “two.txt" usando il comando grep. L'output mostra 5 righe prima che la riga contenga una parola specifica.

$ grep -B 5 Più due.TXT

Il comando grep per mostra le 5 righe dopo la parola "Most" dal file di testo "two.txt" è stato fornito di seguito.

$ grep -A 5 Più due.TXT

Cambiamo la parola chiave da cercare. Useremo "of" come parola chiave da abbinare questa volta. Visualizza le 2 righe prima della parola "of" dal file di testo "two.txt" può essere eseguito utilizzando il comando grep sottostante. L'output mostra due righe per la parola chiave "of" perché arriva due volte nel file. Quindi l'output contiene più di 2 righe.

$ grep -B 2 di due.TXT

Ora visualizzando le 2 righe del file “two.txt" dopo la riga che contiene la parola chiave "of" può essere eseguita utilizzando il comando seguente. L'output visualizza nuovamente più di 2 righe.

$ grep -A 2 di due.TXT

Esempio 03: utilizzo di '-C'

Un altro flag, "-C" è stato utilizzato per visualizzare le righe prima e dopo la parola abbinata. Mostriamo il contenuto del file “one.txt" usando il comando cat.

$ gatto uno.TXT

Scegliamo "società" come parola chiave da abbinare. Il comando grep sottostante visualizzerà le 2 righe prima e le 2 righe dopo la riga che contiene la parola "società" al suo interno. L'output mostra una riga prima della riga della parola specifica e 2 righe dopo di essa.

$ grep -C 2 società uno.TXT

Vediamo il contenuto del file “two.txt" usando il comando cat sottostante.

$ gatto due.TXT

In questa illustrazione, stiamo usando "poesie" come parola chiave da abbinare. Quindi, esegui il comando seguente per questo. L'output mostra due righe prima e due righe dopo la parola abbinata.

$ grep -C 2 poesie due.TXT

Usiamo un'altra parola chiave dal file “two.txt" da abbinare. Questa volta stiamo consumando "natura" come parola chiave. Quindi, prova il comando seguente mentre usi "-C" come flag con la parola chiave "natura" dal file "due.TXT". Questa volta, l'output ha più di due righe nell'output. Poiché il file contiene la parola "natura" più di una volta, questa è la ragione dietro di esso. La parola chiave "natura", che viene prima, ha due righe prima e due righe dopo. Mentre la seconda corrisponde alla stessa parola chiave, "natura" ha due righe prima di essa, ma non ci sono righe dopo di essa perché si trova nell'ultima riga del file.

$ grep -C 2 poesie due.TXT

Conclusione

Riusciamo a visualizzare le righe prima e dopo la parola specifica durante l'utilizzo dell'istruzione grep.

Le migliori distribuzioni Linux per il gioco nel 2021
Il sistema operativo Linux ha fatto molta strada dal suo aspetto originale, semplice e basato su server. Questo sistema operativo è notevolmente migli...
Come acquisire e riprodurre in streaming la tua sessione di gioco su Linux
In passato, giocare era considerato solo un hobby, ma con il tempo l'industria dei giochi ha visto una crescita enorme in termini di tecnologia e nume...
I migliori giochi da giocare con il tracciamento delle mani
Oculus Quest ha recentemente introdotto la grande idea del tracciamento manuale senza controller. Con un numero sempre crescente di giochi e attività ...