[email protected] wrote:
Salve a tutti,
dovrei sostituire il formato di una stringa presente in
un file di testo.
La stringa è una data del tipo '2009-02-28 00:00:00'
e la dovrei sostituire con '20090228'.
Le stringhe sono diverse nei
valori, ed in più il carattere '-' è presente nelle righe, quindi un
trova e sostituisci del carattere '-' non va bene, a meno che non
riesco a lavorare sulla stinga.
Per selezionarla ho provato così
sed
-e "s/[0-9]\{4\}\-[0-9]\{2\}\-[0-9]\{2\}\s00:00:00/prova/" miofile.txt
nuovo.txt
Come faccio per mettere al posto di "prova" il modello
giusto?
Grazie
e funziona
puoi usare le back-reference
$ echo '2009-02-28 00:00:00' | sed
's/\([0-9]\{4\}\)-\([0-9]\{2\}\)-\([0-9]\{2\}\) 00:00:00/\1\2\3/'
20090228
in pratica metti tra parentesi tonda ogni "gruppo" che vuoi isolare, e
poi lo richiami con \1 \2 ... nell'ordine
ti consiglio un bel tutorial sull'argomento
http://www.grymoire.com/Unix/Sed.html
--
Per REVOCARE l'iscrizione alla lista, inviare un email a
[email protected] con oggetto "unsubscribe". Per
problemi inviare un email in INGLESE a [email protected]
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]