Ok, así que hice mi script, lo dejé caer y /etc/cron.hourlyluego chmod 777el archivo pero no se ejecutará (automáticamente). Si lo ejecuto manualmente, funciona bien. ¿Necesito hacer algo más?
cron-jobs
command-line
crontab
cron
Switchkick
fuente
fuente

Respuestas:
¿Por qué no usar crontab (/ etc / crontab) y usar * / 1 en el campo de la hora? He usado esto para ejecutar un script cada 5 minutos y funciona bien:
fuente
cron.dailyy amigos funciona un poco mejor si la máquina no está funcionando todo el tiempo, porque anacron intenta aproximarse al horario correcto, mientras que cron simple simplemente no los ejecutará si la máquina no está encendida toda la noche. Para trabajos por hora, esto probablemente no importa tanto./etc/crontab:cron.daily,cron.weeklyycron.monthlyejecuta con anacron (si está disponible), pero por horarun-parts --report /etc/cron.hourly.Las entradas en
cron.hourlyson ejecutadas por el mecanismo run-parts (man run-partspara más información). Yrun-partses exigente con los nombres de archivo que considera válidos.Por ejemplo, darle una extensión a su secuencia de comandos la invalidará y dará como resultado que el trabajo no se ejecute.
[a-zA-Z0-9_-]son los caracteres válidos, entonces el '.' lo invalidaAl agregar un trabajo a
/etc/cron.hourly(o.daily,.weekly, etc.), se recomienda probar más tarde querun-partsen realidad va a ejecutarlo con el comando:Si al ejecutar este comando muestra su archivo, significa que funcionó. De lo contrario, si no muestra nada, su nombre de archivo no es válido.
¿Cómo se llamaba tu guión?
fuente
giving your script an extension will make it invalid and result in the job not being run--reportpara ejecutar realmente los scripts.Su problema probablemente se deba a los permisos excesivamente abiertos, que permiten a cualquiera editar su archivo. Intenta en su
755lugar.Buscar en las entradas cron en su salida de syslog debería confirmar esto.
fuente
La respuesta de DaithiF debería ser la respuesta correcta.
Además, mi guión no tenía
#!/bin/bashen la primera línea. Aunque el script se pudo ejecutar con la línea de comando, lorun-partsrechazó diciendo "Error de formato de ejecución ".Cambiar el nombre de archivo de
scriptname.shascriptnamey añadiendo el#!/bin/bashen primera línea habilitada mi script para ejecutar por hora.fuente
Cuando corres
¿Esta tarea está en la lista?
si no, agréguelo
agrega esta línea
si está en esta lista, intente agregar la ruta del lenguaje de programación a la parte superior de su script
Ejemplo:
Estas 2 cosas siempre resolvieron mis problemas :)
fuente