2010-10-25 4 views
6

J'ai un script CGI qui va convertir une chaîne donnée en une date/heure en utilisant la commande unix date. Je suis à la recherche d'un format qui peut facilement être intégré à une URL sans avoir besoin de s'échapper avec un %20. Le client qui construit la date/heure dans l'URL n'a pas de conversion en temps unix (secondes depuis epoch) et n'a pas de moyen de convertir en offset depuis zulu (ISO8601 ne fonctionnera pas). Cependant, il est possible de reformater la date et l'heure utilisées pour créer l'URL de plusieurs autres façons.Y a-t-il un format date/heure qui n'a pas d'espaces?

Y a-t-il d'autres options pour créer un datetime dans un format non-espacé?

Répondre

1

J'ai trouvé un travail simple. Utilisez simplement des traits de soulignement pour les espaces et effectuez un tr dans le script CGI avant de convertir en date. Il ressemble à ceci:

stamp="$(echo $stamp|tr _ ' '|xargs -0 date -d)"

Ensuite, utilisez une date qui ressemble à ceci:

26_Oct_2010_11:57:56_CDT

qui se transforme en:

date -d "26 Oct 2010 11:57:56 CDT"

20
$ date "+%F-%T" 
2010-10-25-16:23:14 
+0

Merci pour la réponse mais j'ai toujours besoin d'un fuseau horaire. De plus, 'date -d" 2010-10-25-16: 23: 14 "' n'a pas fonctionné. – User1

+0

'date" +% F-% T-% Z "' donne aussi le fuseau horaire. – Flash

Questions connexes