Bonjour à tous,
J’ai une ligne qui utilise awk pour transformer rapidement du gmt en localtime (gmt+2) sauf que je perd les FS et je trouve pas de manière de les conserver.
[code]2012-05-12 08:50:06.462957|INFO |VirtualServer | 1| client connected ‘name1’(id:41) from ip.ip.ip.ip:55401
2012-05-12 09:55:19.051825|INFO |VirtualServer | 1| client connected ‘name2’(id:13) from ip.ip.ip.ip:50176
awk -F " |:" ’ {$2=$2+2 ; print $0}’
2012-05-12 10 50 06.462957|INFO |VirtualServer | 1| client connected ‘name1’(id 41) from ip.ip.ip.ip 55401
2012-05-12 11 55 19.051825|INFO |VirtualServer | 1| client connected ‘name2’(id 13) from ip.ip.ip.ip 50176 [/code]
Comme vous le constatez les heures, les id et les ports ont perdu leurs ‘:’
J’ai testé plein de truc déjà mais rien de bon :
[code]awk -F ‘[: ]’ ‘{$2=$2+2 ; print $0}’
=> 2012-05-12 10 50 06.462957|INFO |VirtualServer | 1| client connected ‘name1’(id 41) from ip.ip.ip.ip 55401
awk -F ‘:’ ‘{$1=$1+2 ; print $0}’
=> 2014 50 06.462957|INFO |VirtualServer | 1| client connected ‘name1’(id 41) from ip.ip.ip.ip 55401
awk -F ‘[: ]’ ‘BEGIN { OFS=" " } {$2=$2+2 ; print $0}’
=> 2012-05-12 10 50 06.462957|INFO |VirtualServer | 1| client connected ‘name1’(id 41) from ip.ip.ip.ip 55401
awk -F ‘[: ]’ ‘BEGIN { OFS=":" } {$2=$2+2 ; print $0}’
=> 2012-05-12:10:50:06.462957|INFO:|VirtualServer:|:1|:client:connected:‘name1’(id:41):from:ip.ip.ip.ip:55401
[/code]
Si quelqu’un à une solution ? Y en a t-il une ?
Merci
Ps: le fond du problème sur le gmt n’est pas important, je sais que pour 23h et 24h je passe a 25h et 26h et pareil pour le gmt+2 qui devient gmt+1 en hiver