Question [resolu] recuperer le temp UNIX Epoch en nano sec

Plus d'informations
il y a 7 ans 3 mois #22966 par Gabriel
Bonsoir à toutes et tous!

Bonne année 2017 avec PowerShell!

Le petit challenge du jour est le suivant:

pour horodater des valeurs qui vont être insérer dans une base de donnée InfluxDB, j'ai besoin de récupérer la date/jour a la norme EPOCH, mais là où ça devient sympa c'est que j'ai besoin de la version en NANO secondes.

de base on peut le récupérer ainsi en secondes
[code:1]
PS C:\>[int64](([datetime]::UtcNow)-(get-date \"1/1/1970\"«»)).TotalSeconds

1484771566
[/code:1]

en milliseconds
[code:1]
PS C:\>[int64](([datetime]::UtcNow)-(get-date \"1/1/1970\"«»)).TotalMilliseconds

1484771566338
[/code:1]

sauf que j'ai besoin d'un peu plus de digit
[code:1]
1484771566 ->s
1484771566338 ->ms
1484771566338000000 ->nanosecondes
[/code:1]

Alors je précises: ce que je met dans la base n'a pas besoin d'autant de precision, par contre c'est le seul format accepté (je collectes les données toutes les minutes/5 minutes/10 minutes).

p.s.: ce que je fais avec la base InfluxDB c'est que j'envoi dans un paquet udp avec le format suivant
[code:1]
weather,location=us-midwest temperature=82 1465839830100400200
[/code:1]

une idee?

cordialement
Tonic.<br><br>Message édité par: tonic8, à: 20/01/17 22:55

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 7 ans 2 mois #22980 par Gabriel
Bien bien

en fait en y reflechissant il me suffit tout simplement de multiplier par 1000000


[code:1]
PS C:\&gt;[int64](([datetime]::UtcNow)-(get-date \&quot;1/1/1970\&quot;«»)).TotalMilliseconds

1484771566338

PS C:\&gt;([int64](([datetime]::UtcNow)-(get-date \&quot;1/1/1970\&quot;«»)).TotalMilliseconds)*1000000

1484771566338000000
[/code:1]

comme quoi s'était simple...

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.061 secondes
Propulsé par Kunena