Come rimuovere i caratteri speciali usando sed

Come rimuovere i caratteri speciali usando sed
Il comando SED è un'utilità Linux che può essere utilizzata per eseguire molte operazioni che includono operazioni di inserto ed eliminare, trovare/cercare e sostituire le operazioni. Il comando SED consente agli utenti Linux di modificare e applicare diverse funzioni sui file senza aprirli direttamente. Le funzionalità di modifica del comando di comando SED che variano dal livello dei principianti al livello avanzato: ad esempio, all'interno di un file di testo queste operazioni possono essere eseguite su diversi dati di dati: caratteri, numerici, caratteri speciali, Alphanumer ET.,

Tenendo conto dell'importanza del comando SED; La nostra guida di oggi esplorerà diversi modi per rimuovere i caratteri speciali usando il comando sed in ubuntu.

La sintassi del comando SED è scritta di seguito:

Sintassi

comando sed [options] [nome file]

A volte i caratteri speciali possono essere una necessità del contenuto scritto in un file di testo ma se vengono utilizzati inutilmente, renderà il file disordinato e ci sono possibilità che il lettore non possa prestare attenzione, risultando così in un documento senza scopo.

Come usare sed per rimuovere i caratteri speciali in Ubuntu

Questa sezione descriverà brevemente i modi per rimuovere i caratteri speciali da un file di testo usando SED; Dipende dal numero di caratteri nel tuo file che si desidera rimuovere; Ci possono essere due possibilità durante la rimozione dei caratteri da un file, o si desidera rimuovere un singolo carattere speciale, oppure si desidera rimuovere più caratteri contemporaneamente. Da queste possibilità indicate sopra, abbiamo esteso questa sezione a due metodi che affronteranno entrambe le possibilità:

Metodo 1: come rimuovere un singolo carattere usando sed

Metodo 2: come rimuovere più caratteri contemporaneamente usando sed

Il primo metodo affronta la prima possibilità e la seconda possibilità sarà discussa nel metodo 2, scaviamo in esse uno per uno:

Metodo 1: come rimuovere un singolo carattere speciale usando sed

Abbiamo creato un file di testo "cap.TXT"Questo contiene pochi caratteri speciali su righe diverse; Di seguito viene visualizzato il contenuto all'interno del file:

$ CAT CH.TXT

Puoi notare che il contenuto all'interno "cap.TXT"È difficile da leggere; Ad esempio, vogliamo rimuovere il personaggio "#" dal file di testo; Per questo, dobbiamo usare il seguente comando per rimuovere "#" dall'intero documento:

$ sed 's/\#// g' ch.TXT

Inoltre, se si desidera rimuovere il carattere speciale dalla riga specifica; Per questo, è necessario inserire il numero di riga accanto alla parola chiave "S" poiché il comando indicato di seguito rimuoverà solo "#" dal numero 3 della riga::

$ sed '3s/\#// g' ch.TXT

Metodo 2: come rimuovere più caratteri contemporaneamente usando sed

Ora abbiamo un altro file "file.TXT"Questo contiene più di un tipo di carattere e vogliamo rimuoverli in un singolo GO. In questo metodo la sintassi viene modificata un po 'dal comando sopra; Ad esempio, dobbiamo rimuovere cinque caratteri "#$%*@" da "file.TXT";

In primo luogo, guarda il contenuto di "file.TXT"Poiché le parole vengono interrotte da questi personaggi;

$ cat file.TXT

Il comando indicato di seguito aiuterà a rimuovere tutti questi caratteri speciali da "file.TXT":

$ sed 's/[#$%*@] // g'.TXT

Qui possiamo disegnare un altro esempio, diciamo che vogliamo rimuovere solo pochi caratteri da righe specifiche.

Abbiamo creato un nuovo file e il contenuto di "nuovo file.TXT"È mostrato di seguito:

$ cat newfile.TXT

Per questo, abbiamo scritto comando che eliminerà "#@" E "%*"Dalle righe 2 e 3 di"nuovo file.TXT"Rispettivamente.

$ sed '2s/[#@] // g; 3s/[%*] // g 'newfile.TXT

Il comando SED utilizzato nei metodi sopra visualizzerà il risultato solo sul terminale anziché applicare le modifiche nel file di testo: per questo, dobbiamo utilizzare l'opzione "-i" del comando SED. Può essere utilizzato con qualsiasi comando SED e le modifiche verranno apportate al file invece di stampare sul terminale.

Conclusione

Apparentemente, il comando SED funge da solito editor di testo ma ha un elenco di azioni molto più ampio rispetto ad altri redattori. Devi solo scrivere un comando e le modifiche verranno apportate automaticamente; Questa funzione attira gli appassionati di Linux o gli utenti che preferiscono il terminale su GUI. Seguendo le vantaggiose funzionalità di SED; La nostra guida è focalizzata sulla rimozione di caratteri speciali dal file di testo. Se confrontiamo solo questa funzione del comando SED con altri redattori, è necessario cercare caratteri in tutto il file e quindi rimuoverli uno per uno è un processo noioso. D'altra parte, SED esegue la stessa azione scrivendo un comando a riga singolo sul terminale.