[gawk] Timestamp met punt uitlezen

Pagina: 1
Acties:

  • Blubber
  • Registratie: Mei 2000
  • Niet online
Ik wil een email logbestanden uitlezen, de timstamps staan er echter in met een punt
code:
1
m 1004095562.490061500 1004095562.679533500 2961 1 0 0 < AALSMEERDERBRUG@Marokko.com > 11936 81

Hoe zet ik deze om in 'normale' tijd?

Verwijderd

Ik neem aan dat alles achter de punt in een timestamp tijden kleiner dan een seconde uitdrukken. Dan is het niet zo moeilijk:
code:
1
2
3
4
5
6
7
8
function print_date(timestamp,   idx) {
  idx = index(timestamp, ".")
  print strftime("%d-%m-%Y %H:%M:%S", substr(timestamp, 1, idx - 1)) "." int(substr(timestamp, idx) * 10000)
}

BEGIN {
  print_date("1004095562.490061500")
}

(Let erop dat de timestamp een string moet zijn, dus evt. "" appenden.)