Come inserire una riga in un file di testo

Avete bisogno di inserire rapidamente una riga in un file di testo? Potete farlo dal terminale con il comando sed.

Immaginate di avere il file elenco.txt che contiene le seguenti righe

tavolo
legno
baseball
giardino
casa
strada

e volete aggiungere la stringa “muro” dopo “baseball”. Dalla shell digitate:

sed "/baseball/amuro" elenco.txt

In questo modo nel terminale visualizzerete il contenuto del file con la nuova riga posizionata nel punto desiderato grazie al tag “a” (“append”) messo prima di “muro”:

tavolo
legno
baseball
muro
giardino
casa
strada

Per salvare l’elenco aggiornato in un nuovo file bisogna inviare il risultato del comando sullo standard output:

sed "/giardino/amuro" elenco.txt > nuovo_elenco.txt

Per inserire la stringa “muro” prima della riga contenente “tavolo” bisogna sostituire il tag “a” con “i” (“insert”):

sed "/tavolo/imuro" elenco.txt

Il nuovo elenco sarà così composto:

muro
tavolo
legno
baseball
giardino
casa
strada

Per salvare l’elenco aggiornato in un nuovo file valgono le stesse considerazioni di prima:

sed "/tavolo/imuro" elenco.txt > nuovo_elenco.txt

Per aggiungere un altro file, che in questo caso andrà ad accodarsi dopo “strada”, basta dare:

sed "/strada/ranimali.txt" elenco.txt > nuovo_elenco3.txt

Il nuovo elenco sarà così composto:

tavolo
legno
baseball
giardino
casa
strada
gatto
cane
giraffa

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.