![](https://seccdn.libravatar.org/avatar/d5ace887cb026629402b66d896def5cc.jpg?s=120&d=mm&r=g)
Hola Tengo un pequeño problemilla con un script que tengo que se lanza desde el cron. Resulta que ese script formatea la fecha para crear una especie de log. El caso es que si lo lanzo a mano el formato de fecha me sale de una manera, pero si lo lanzo desde el cron el formato de la fecha es otro distinto, ¿Como puedo hacer para que el formato de fecha sea igual en ambos casos? Gracias Emiliano Sutil
![](https://seccdn.libravatar.org/avatar/e6e710aeed65f3f8c2728e3d541a99f4.jpg?s=120&d=mm&r=g)
Emiliano Sutil escribió:
Hola
Tengo un pequeño problemilla con un script que tengo que se lanza desde el cron. Resulta que ese script formatea la fecha para crear una especie de log. El caso es que si lo lanzo a mano el formato de fecha me sale de una manera, pero si lo lanzo desde el cron el formato de la fecha es otro distinto,
¿Como puedo hacer para que el formato de fecha sea igual en ambos casos?
Gracias
Emiliano Sutil
Como el asunto de tu mensaje lo sugiere, lo mas probable es que tengas problemas precisamente con el uso de variables de entorno. Cron no tiene activas las mismas variables de entorno que tiene una sesion shell (bash). Si esa es la explicacion, entonces quiere decir que tu script esta usando variables de entorno que no define explicitamente, y en consecuencia basta que lo hagas para solucionar el problema, en la forma: export VARIABLE=Contenido Luego al script le dara exactamente lo mismo si lo lanzas desde cron que si lo ejecutas en forma interactiva Saludos LRP
![](https://seccdn.libravatar.org/avatar/d5ace887cb026629402b66d896def5cc.jpg?s=120&d=mm&r=g)
Luis Roa P. wrote:
Emiliano Sutil escribió:
Hola
Tengo un pequeño problemilla con un script que tengo que se lanza desde el cron. Resulta que ese script formatea la fecha para crear una especie de log. El caso es que si lo lanzo a mano el formato de fecha me sale de una manera, pero si lo lanzo desde el cron el formato de la fecha es otro distinto,
¿Como puedo hacer para que el formato de fecha sea igual en ambos casos?
Gracias
Emiliano Sutil
Como el asunto de tu mensaje lo sugiere, lo mas probable es que tengas problemas precisamente con el uso de variables de entorno. Cron no tiene activas las mismas variables de entorno que tiene una sesion shell (bash). Si esa es la explicacion, entonces quiere decir que tu script esta usando variables de entorno que no define explicitamente, y en consecuencia basta que lo hagas para solucionar el problema, en la forma:
export VARIABLE=Contenido
Pues justo he hecho esto en el script export LC_TIME="es_ES.UTF-8" y ya me sale correctamente. No me habia percatado del detalle de que puedo configurar todas las variables cuando lanzo el script Gracias
Luego al script le dara exactamente lo mismo si lo lanzas desde cron que si lo ejecutas en forma interactiva
Saludos LRP
![](https://seccdn.libravatar.org/avatar/861b5545c111d2257fa12e533e723110.jpg?s=120&d=mm&r=g)
El 2005-01-12 a las 10:00 +0100, Emiliano Sutil escribió:
Tengo un pequeño problemilla con un script que tengo que se lanza desde el cron. Resulta que ese script formatea la fecha para crear una especie de log. El caso es que si lo lanzo a mano el formato de fecha me sale de una manera, pero si lo lanzo desde el cron el formato de la fecha es otro distinto,
Ah, que curioso... :-o
¿Como puedo hacer para que el formato de fecha sea igual en ambos casos?
El cron trabaja con un entorno limitado. Yo lo que haría sería especificarle al comando date el formato exacto que quieres usar. Si no, pues define tu la variable "LC_TIME", que sospecho es la que afecta. -- Saludos Carlos Robinson
![](https://seccdn.libravatar.org/avatar/d5ace887cb026629402b66d896def5cc.jpg?s=120&d=mm&r=g)
Carlos E. R. wrote:
El 2005-01-12 a las 10:00 +0100, Emiliano Sutil escribió:
Tengo un pequeño problemilla con un script que tengo que se lanza desde el cron. Resulta que ese script formatea la fecha para crear una especie de log. El caso es que si lo lanzo a mano el formato de fecha me sale de una manera, pero si lo lanzo desde el cron el formato de la fecha es otro distinto,
Ah, que curioso... :-o
Pues si, antojos que tienen los linux :-)
¿Como puedo hacer para que el formato de fecha sea igual en ambos casos?
El cron trabaja con un entorno limitado. Yo lo que haría sería especificarle al comando date el formato exacto que quieres usar. Si no, pues define tu la variable "LC_TIME", que sospecho es la que afecta.
Si que era esa variable la q estaba tocando los xxxxxx. mire el valor que se asignaba cuando lanzaba a mano y cual era el valor al lanzarlo desde el cron y eran LC_TIME="es_ES.UTF-8" LC_TIME="POSIX" asignando correctamente esta variable ya me funciona bien, Saludos Emiliano Sutil
![](https://seccdn.libravatar.org/avatar/861b5545c111d2257fa12e533e723110.jpg?s=120&d=mm&r=g)
El 2005-01-13 a las 09:34 +0100, Emiliano Sutil escribió:
variable "LC_TIME", que sospecho es la que afecta.
Si que era esa variable la q estaba tocando los xxxxxx. mire el valor que se asignaba cuando lanzaba a mano y cual era el valor al lanzarlo desde el cron y eran LC_TIME="es_ES.UTF-8" LC_TIME="POSIX"
asignando correctamente esta variable ya me funciona bien,
Creo que el root recibe esa - si, en efecto: nimrodel:~ # locale LANG= LC_CTYPE=en_US.UTF-8 LC_NUMERIC="POSIX" LC_TIME="POSIX" LC_COLLATE="POSIX" LC_MONETARY="POSIX" LC_MESSAGES="POSIX" LC_PAPER="POSIX" LC_NAME="POSIX" LC_ADDRESS="POSIX" LC_TELEPHONE="POSIX" LC_MEASUREMENT="POSIX" LC_IDENTIFICATION="POSIX" LC_ALL= O sea, todos los script del sistema están preparados para trabajar con "POSIX". -- Saludos Carlos Robinson
participants (3)
-
Carlos E. R.
-
Emiliano Sutil
-
Luis Roa P.