Ho un file di registro di input in questo formatoSed sostituzione e comando esterno
May 23 2012 11:59:56
a;b;c
May 21 2012 16:54:12
d;e;f
May 19 2012 16:22:52
g;h;i
...
vorrei uscita in questo formato
2012-05-23
a;b;c
2012-05-21
d;e;f
2012-05-19
g;h;i
...
Utilizzando sed
, so come sostituire la data linee
% sed 's/.*:.*:.*/match_string/' input.txt
match_string
a;b;c
match_string
d;e;f
match_string
g;h;i
...
Uso date
, so come convertire le date:
% date -d 'May 23 2012 11:59:56' '+%Y-%m-%d'
2012-05-23
Ma come si può valutare la corrispondenza_stringa durante il comando sed?
Probabilmente intendevi dire "23 maggio ..." invece di "Maggio 23 maggio ..." nel tuo comando "date". – devnull
Ho corretto gli errori di battitura, mi dispiace per quello. –
È necessario un comando esterno? vedi http://sed.sf.net/grabbag/tutorials/lookup_tables.txt – potong