J'essaie d'utiliser la commande date pour générer un horodatage de fichier que la commande date elle-même peut interpréter. Cependant, la commande date ne semble pas aimer sa propre sortie, et je ne sais pas comment contourner cela. Exemple concret:
sh-4.2$ date
Fri Jan 3 14:22:19 PST 2014
sh-4.2$ date +%Y%m%dT%H%M
20140103T1422
sh-4.2$ date -d "20140103T1422"
Thu Jan 2 23:22:00 PST 2014
date semble interpréter la chaîne avec un décalage de 15 heures. Existe-t-il des solutions connues à cela?
Edit: ce n'est pas un problème d'affichage:
sh-4.2$ date +%s
1388791096
sh-4.2$ date +%Y%m%dT%H%M
20140103T1518
sh-4.2$ date -d 20140103T1518 +%s
1388737080
sh-4.2$ python
Python 3.3.3 (default, Nov 26 2013, 13:33:18)
[GCC 4.8.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 1388737080 - 1388791096
-54016
>>> 54016/3600
15.004444444444445
>>>
Il est toujours éteint de 15 heures lorsqu'il est affiché sous forme d'horodatage Unix.
EDIT # 1
Je devrais peut-être poser cette question un peu différemment. Disons que j'ai une liste d'horodatages de base ISO8601 de la forme:
- YYYYMMDDThhmm
- YYYYMMDDThhmmss
Quelle est la manière la plus simple de les convertir en horodatages Unix correspondants?
Par exemple:
- 20140103T1422 = 1388787720
- 20140103T142233 = 1388787753
20140103T1518
n'est pas valide ISO 8601, il manque la partie du fuseau horaire