Probabilmente il titolo di questa guida è un po' ambiguo, ma ciò che impareremo da questa guida è: supponiamo di avere differenti file di testo puro (.txt, .html, .php, .java, ecc...) e supponiamo di voler sostituire tutte le occorrenze di una parola con un altro termine. Possiamo farlo velocemente utilizzando il comando sed!
L'uso del comando è molto semplice, ad esempio:
sed -i "s/alfa/beta/g" file.txt
sed = è il comando per manipolare lo stream (sed sta per stream editor) -i = sta per inline e permette di modificare direttamente il file s/ = sostituisci alfa/ = primo termine beta/ = secondo termine g = sta per global e permette di sostituire ogni occorrenza trovata (senza questo parametro, sostituirebbe solo la prima occorrenza in ogni riga) file.txt = la sostituzione avviene nel file 'file.txt' contenuto nella directory corrente
Il comando sed è case-sensitive, quindi è possibile effettuare anche sostituzioni di questo tipo:
sed -i "s/alfa/Alfa/g" file.txt
(permette di mettere la lettera maiuscola per ogni occorrenza di "alfa").
Infine, per giungere al nostro scopo, ovvero quello di sostituire ogni occorrenza del termine in tutti i file .txt:
sed -i "s/alfa/beta/g" *.txt
|