Il comando SED ha un long elenco di operazioni supportate che possono essere eseguite per alleviare il processo di modifica dei file di testo. Consente agli utenti di applicare le espressioni che vengono generalmente utilizzate nei linguaggi di programmazione; Una delle espressioni supportate dal core è l'espressione regolare (Regex).
Il regex viene utilizzato per gestire il testo all'interno dei file di testo, con l'aiuto di regex uno schema che consiste nella stringa e questi schemi vengono quindi utilizzati per abbinare o individuare il testo. Il regex è ampiamente utilizzato in linguaggi di programmazione come Python, Perl, Java e il suo supporto è disponibile anche per programmi di riga di comando come Grep e anche diversi redattori di testo come SED.
Sebbene la semplice ricerca e ordinamento possa essere eseguita utilizzando il comando SED, usando Regex con SED abilita la corrispondenza a livello avanzato nei file di testo. Il regex funziona sulle direzioni dei caratteri utilizzati; Questi caratteri guidano il comando SED per eseguire le attività dirette. In questo articolo, dimostreremo l'uso di Regex con il comando SED e seguito dagli esempi che mostreranno l'applicazione di Regex.
Come usare regex in sed
Questa sezione è la parte fondamentale della scrittura che contiene la spiegazione dettagliata delle espressioni regolari nel contesto SED: iniziamo con esso
Abbinare la parola
Se vuoi trovare la parola che corrisponda esattamente ai caratteri, allora devi specificare i caratteri esatti che corrispondono alla parola: ad esempio, abbiamo un file di testo che contiene l'elenco dei produttori di laptop chiamato come "Laptop.TXT":
Ottiamo il contenuto del file utilizzando il comando menzionato di seguito:
Laptop da $ cat.TXT
Utilizzare il seguente comando aiuterà per ottenere il "Acer" parola:
laptop $ sed -n '/acer/p'.TXT
Abbinamento di tutte le parole iniziano con un carattere specifico
Questo supporto Regex contiene molteplici azioni descritte in questa sezione:
Se vuoi cercare e abbinare le parole che iniziano e termina con un carattere specifico, allora devi usare "*"Accedi tra i personaggi per farlo; Ma si notò che il "*"Il simbolo stampa le parole che iniziano con singolo o multiplo"COME"Ma con singolo"R": Ad esempio, il comando scritto di seguito stamperà tutte le parole che iniziano con singolo o multiplo"UN"E termina con singolo"R":
$ sed -n '/a*r/p' laptop.TXT
Per abbinare la parola che termina con carattere specifico o che contiene solo carattere specificato: il comando scritto di seguito visualizzerà le parole con il carattere "P"O la parola esatta"HP":
$ sed -n '/h \?Laptop p/p '.TXT
Abbinare le parole con carattere specifico
Si noti che è possibile ottenere le parole che contengono qualsiasi carattere con l'aiuto del comando SED: ad esempio, il comando menzionato di seguito troverà le parole che contiene uno di questi personaggi "A", "H" o "D":
$ sed -n '/[ahd]/p' laptop.TXT
Corrispondere alla stringa
È possibile utilizzare il comando SED con espressioni regolari per stampare le stringhe; È possibile stampare tutte le stringhe o puoi anche targeting una stringa specifica utilizzando il carattere di partenza o finale di quella stringa:
Abbiamo usato "file.TXT'Usarlo come esempio in questa sezione; Questo file contiene il seguente contenuto:
$ cat file.TXT
Ad esempio, se si desidera stampare tutte le corde; Il seguente comando ti aiuterà in questo senso:
$ sed -n '/.File \+/p '.TXT
Se vuoi ottenere tutte le corde che iniziano con il personaggio "UN"Quindi devi usare il simbolo delle carote (^) per indicare il carattere iniziale della stringa.
Il comando menzionato di seguito fino a stampare le corde che iniziano con "@":
$ sed -n '^@'.TXT
Inoltre, se vuoi ottenere solo quelle stringhe che finiscono con un carattere specifico, allora devi usare "$"Con quel personaggio. Ad esempio, il comando scritto qui stamperà le stringhe che termina con "#":
File $ sed -n '/#$/p'.TXT
Abbinamento delle righe vuote
Il supporto REGEX del comando SED consente all'utente di stampare/eliminare le righe vuote utilizzando "/^$/"; Il comando seguente stamperà le righe vuote in "Laptop.TXT" file:
$ sed -n '/^$/p' laptop.TXT
Oppure puoi eliminare sostituendo "P" con "D"Nel comando sopra come visualizzato di seguito:
$ sed -n '/^$/d' laptop.TXT
Abbinare il caso della lettera
Il comando SED consente agli utenti di manipolare le parole con un caso di lettera specifica:
Ad esempio, è possibile stampare, eliminare, sostituire le parole del caso della lettera usando il comando SED:
Un file di testo chiamato come "test.TXT"Viene utilizzato in questo esempio, il contenuto di questo file viene stampato utilizzando il comando seguente:
$ cat test.TXT
Abbinare le lettere minuscole
Il seguente comando stamperà tutte quelle parole che contengono lettere minuscole in esse:
Test $ sed -n '/[a -z]/p'.TXT
Abbinare le lettere maiuscole
Oppure puoi stampare le parole che contengono lettere maiuscole emettendo il seguente comando nel terminale:
Test $ sed -n '/[a -z]/p'.TXT
Conclusione
Le espressioni regolari (regex) sono indicate come; Qualsiasi parola o sequenza di caratteri usati per ottenere le parole corrispondenti da qualsiasi file di testo. Forniscono un ampio supporto per diversi linguaggi di programmazione e comandi o programmi Ubuntu. O. L'utilità della riga di comando SED di Ubuntu consente di eseguire diverse attività noiose molto facilmente per eseguire diverse operazioni su file di testo. Abbiamo compilato questa guida per illuminare i vantaggi di unire Regex con sed; Questa joint venture fornisce corrispondenza a livello avanzato e ricerca all'interno dei file di testo. Le espressioni regolari hanno bisogno di aiuto dai caratteri utilizzati per la corrispondenza per eseguire varie attività come l'eliminazione, la stampa, la sostituzione o la gestione dei file di testo.