Il mio blog-spazio.

Bash SED aggiungere testo ad inizio e fine

Ciao a tutti,
Linux è meraviglioso, ma questo lo sapevamo già.
Con un semplice comando da shell, possiamo inserire ad inizio di ogni riga o alla fine di ogni riga del testo.
Come?

Con "sed".

Realizzavo degli script per creare autobackup, ed avevo bisogno di modificare un file che mi veniva generato, dovendo inserire in ogni riga iniziale ed in ogni riga finale una mia parola, mi sono rivolto a sed, e si fà così:




scrivo all'inizio di ogni riga
sed -i "s/^/[OK]/g" miobackup.xml

scrivo alla fine di ogni riga
sed -i "s/$/[FINE]/g" miobackup.xml




Praticamente sed và dal file "miobackup.xml" in cui io ho tutti i settori name by name backuppati
ed inserisce il tag [OK] all'inizio di ogni riga
ed il tag [FINE] ad ogni finale di riga.

Vi può essere utile per mille scopi.
Ad esempio se dovete inserire avanti ad un file che vi si è generato, un comando da eseguire.



Ciao.