[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: crontab -e



El día 16 de enero de 2011 19:26, rantis cares <rantiscares@gmail.com> escribió:
> El día 13 de enero de 2011 01:32, fernando sainz
> <fernandojose.sainz@gmail.com> escribió:
>> El día 13 de enero de 2011 00:58, rantis cares <rantiscares@gmail.com> escribió:
>>> El día 10 de enero de 2011 16:05, fernando sainz
>>> <fernandojose.sainz@gmail.com> escribió:
>>>> El día 10 de enero de 2011 22:49, rantis cares <rantiscares@gmail.com> escribió:
>>>>> El día 10 de enero de 2011 12:51, fernando sainz
>>>>> <fernandojose.sainz@gmail.com> escribió:
>>>>>> El día 10 de enero de 2011 18:45, rantis cares <rantiscares@gmail.com> escribió:
>>>>>>> El día 10 de enero de 2011 11:23, Camaleón <noelamac@gmail.com> escribió:
>>>>>>>> El Mon, 10 Jan 2011 10:08:27 -0600, rantis cares escribió:
>>>>>>>>
>>>>>>>>> El día 9 de enero de 2011 05:14, Camaleón escribió:
>>>>>>>>
>>>>>>>>>> Parece que tiene problemas con la codificación. Prueba a definir en la
>>>>>>>>>> tarea del cron la variable "LANG=es_ES.UTF-8".
>>>>>>>>>
>>>>>>>>> Perdon mi ignorancia, pero no se como hacer esto que dices. Ya intente
>>>>>>>>> (ejecutando crontab me abre un archivo en nano y ahi agrego en la
>>>>>>>>> primera linea lo que me dices
>>>>>>>>>
>>>>>>>>>                  LANG=es_ES.UTF-8
>>>>>>>>>
>>>>>>>>>                  #mn hr dm me ds comando
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Pero me sigue saliendo el mismo error. Intente poner la variable en mi
>>>>>>>>> script de la siguiente manera:
>>>>>>>>>
>>>>>>>>> #!/bin/bash
>>>>>>>>>
>>>>>>>>> LANG=es_ES.UTF-8
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Pero me sigue arrojando el mismo error:
>>>>>>>>
>>>>>>>> (...)
>>>>>>>>
>>>>>>>>> GNOKII Version 0.6.26
>>>>>>>>> iconv: Invalid or incomplete multibyte or wide character
>>>>>>>>> iconv: Invalid or incomplete multibyte or wide character
>>>>>>>>
>>>>>>>> Está raro... ¿qué comando ejecutas exactamente? Es decir ¿qué contiene el
>>>>>>>> script que ejecuta cron? Si lo envías a la lista, oculta los datos
>>>>>>>> sensibles como números de teléfono, etc...
>>>>>>>
>>>>>>> lo unico que tiene mi grandioso script es:
>>>>>>>
>>>>>>>    #!/bin/bash
>>>>>>>    ALTA=`date "+%d%m%Y-%k%M%S"`
>>>>>>>    gnokii --getsms IN 1 > /home/usuario/mensajes/$ALTA
>>>>>>>    gnokii --deletesms IN
>>>>>>>
>>>>>>> Eso es todo lo que hace mi script
>>>>>>>
>>>>>>>> Otra cosa, ¿si lo ejecutas directamente, sin llamarlo desde cron, te
>>>>>>>> aparece algún mensaje de error?
>>>>>>>
>>>>>>> Cuando lo ejecuto desde la linea de comandos, no me aparece ningun
>>>>>>> error, claro tambien cuando lo ejecuto desde cron, funciona tambien
>>>>>>> perfectamente, pero me manda ese dichoso mail a ca da minuto.
>>>>>>>
>>>>>>> Para añadirlo a cron lo hago mediante la siguiente orden:
>>>>>>>
>>>>>>>    crontab -e
>>>>>>>
>>>>>>> Y entonces me aparece esto
>>>>>>>
>>>>>>>  GNU nano 2.0.7      Fichero: /tmp/crontab.nnilds/crontab
>>>>>>>
>>>>>>> #mn hr dm me ds comando
>>>>>>> LANG=es_ES.UTF-8
>>>>>>>
>>>>>>> #Descargando SMSs a cada minuto y borrandolos
>>>>>>> * * * * * /home/usuario/.script.sh
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> Sin entrar en el porqué de esos mensajes, siempre puedes redirigir las
>>>>>> salidas estandar y/o de error a /dev/null.
>>>>>
>>>>> Creo que eso no es resolver el problema de raiz. Esto no quiere decir
>>>>> que yo "siempre los resuelvo"
>>>>> Pero ahora mi pregunta es ¿Si los dirijo a /dev/null los mensajes se
>>>>> borraran automaticamente incluso de /dev/null? o tambien almacenara la
>>>>> informacion?.
>>>>>>
>>>>
>>>> Como decía no entro en el problema solo comento que para programas que
>>>> escriben en la salida o error estandar puedes de esta forma evitar que
>>>> se genere el correo.
>>>> Siempre podrías redirigirlo a otro fichero para no perder información.
>>>>  con 2>/home/usuario/mensajes/errores.log
>>>>
>>>> Tranquilo que /dev/null es un pozo sin fondo :-)
>>>>
>>>> Por supuesto lo mejor es identificar por qué te produce el mensaje de
>>>> error, pero para eso ya te dieron pistas.
>>>
>>> Agradecido estoy con tu ayuda... hare lo que dices. ¿En crontab -e
>>> puedo redirigirlo?
>>>
>>> ej
>>>
>>> #mn hr dm me ds comando
>>>
>>> #Descargando SMSs a cada minuto y borrandolos
>>>  * * * * * /home/usuario/.script.sh > /dev/null 2>&1
>>>
>>> Gracias
>>>
>>
>> Si, lo puedes poner así.
>>
>> De todas formas como te indicaron por ahí, mira el tema de los locales
>> (man locale),
>> porque a lo mejor tienes que poner alguna variable de entorno en el crontab.
>> Es mejor encontrar el problema, ya que si en algún momento se produjera otro
>> error, al estar redirigido no tendrías constancia de el.
>
> Efectivamente, ya tenia yo un error diferente que no lo hubiese
> detectado si todo lo mandara al "agujero negro"...
>
>>
>> A mi no me gusta editar con "crontab -e"  prefiero tener un fichero
>> "miCrontab" bajo
>> mi $HOME. de esta forma es más fácil tenerlo bajo un sistema de control de
>> versiones y/o backup.
>> Cuando lo modifico hago:  crontab miCrontab; crontab -l;
>
> ¿Crees que es mejor? Si es asi, asi lo aplico.
>
> Gracias
>
>

Yo si, pero cada uno elige su forma de hacer las cosas, yo solo doy opciones....
(si haces copia de seguridad del /var/spool/cron/crontabs/ en tu
backup daría igual)

Por cierto no se si el comando que daba Camaleon era correcto para cambiar
el entorno de una orden:

LANG=POSIX; sh tuscript.sh

Creo recoradar que era sin el punto y coma:

Yo probaría con LC_ALL

LC_ALL=es_ES.UTF-8  tuscript.sh
(o el locale que quieras....)

Saludos.


Reply to: