J'ai des programmes qui écrivent dans des fichiers nohup avec des horodatages. Lorsque les programmes sont exécutés dans un terminal et imprimés à l'écran, la date indique l'heure locale correcte. Cependant, lorsque les programmes sont démarrés à partir du démarrage avec une commande nohup et que la sortie est envoyée à un fichier, l'heure est toujours en UTC.L'heure locale revient à l'UTC dans le fichier nohup
time_t curtime;
time(&curtime);
//Printed to nohup.out (processlog.txt)
printf("Application Started %s", ctime(&curtime));
J'ai essayé localtime() et strftime() et les résultats sont les mêmes.
J'utiliserais peut-être un décalage manuel quelconque. J'ai essayé d'utiliser un simple décalage de tm_hour mais cela ne fonctionnera pas lorsque l'heure UTC passera au jour suivant.
Des suggestions?