2010-01-04 11 views
13

Estoy tratando de configurar un commit de svn automatizado para ejecutar semi-hourly bajo mac os 10.6, pero los crontabs que estoy agregando a cron no parecen ser válidos y/o parece que ni siquiera lo mira cron. Para las pruebas que hice un crontab simple y guión:cron jobs bajo mac os 10.6 snow leopard

Crontab: */2 * * * * /Users/username/crontest

donde nombre de usuario es reemplazado con mi nombre de usuario del sistema, lo que apunta a mi directorio (y sí, los que realmente son tabulaciones entre cada valor - que no se reproducen fielmente en la sección code)

estoy corriendo un crontab -r en primer lugar, a continuación, ejecutar crontab .mycrontab que contiene la línea anterior. crontab -l escupe la línea de arriba, y al ejecutar ps -A | grep cron se muestra /usr/sbin/cron ejecutándose, lo cual supongo que es el cron daemon bajo mac os x. El guión /Users/username/crontest es simplemente anexando una línea de texto en un archivo de texto, tales como:

echo "hi" >> /Users/username/crontest.txt

lo que da? Estoy perplejo.

Respuesta

14

Vaya ... Me faltaba el carácter de nueva línea al final del trabajo cron. Parece que eso lo arregló.

+2

Para que quede claro, tuve un problema similar y agregué una línea nueva a mi archivo cuando ejecuté contrab -e lo solucionó. Ick. –

5

Aunque el método preferido en OS X para ejecutar trabajos automatizados es launchd, todavía se admite cron. Es probable que tenga problemas de permisos con su script; asegúrese de que tenga permiso de ejecución.

Además, */2 significa cada dos minutos, no cada media hora. Pruebe a establecer el campo de minutos con una lista de los minutos:

0,30 * * * * /Users/username/crontest 

funciona para mí en 10.6.

+1

Gracias por la sugerencia. Nota al margen: supongo que no aclaré en mi pregunta original que, aunque mi último trabajo cron estaba destinado a ejecutarse semestralmente, mi trabajo de cron de prueba estaba destinado a ejecutarse una vez cada dos minutos. – jtrim

Cuestiones relacionadas