2011-02-03 60 views
7

Tengo un trabajo de cron que llama a un script de shell.Cómo ejecutar un trabajo de Cron para Node.js

*/2 * * * * sh cron_test.sh >> output.log 

En el lado del script de shell, corro algunas líneas de comando como:

#!/usr/bin 

./mongo/bin/mongodump ..... 

FILE_NAME='abc' 

node mynode.js $FILENAME 

Se ejecuta si acabo de llamar cron_test.sh en símbolo del sistema. Sin embargo, no ejecuta el nodo si es ejecutado por cronjob. Ejecuta el comando mongodump. ¿Así que qué hay de malo? ¿Hay algo que tenga que establecer para obtener permiso, etc.?

+0

¿Estás seguro de que funciona desde la línea de comandos? Quiero decir, no has definido la variable 'FILENAME'. – CanSpice

+0

¿Está seguro de que el nodo está en la ruta del usuario en el que se está ejecutando cron? – macarthy

+0

Usted sabe que tiene 2 variables de nombre de archivo: 'FILE_NAME' y' FILENAME' - ¿no? –

Respuesta

6

gracias .. me parece fuera ..

o bien tengo que especificar la ruta de nodo o hacer eso en el guión sh:

nodejs/node myscript.js 

donde nodejs/nodo es donde instalado el nodo .

+0

Aleluya. Gracias. He estado lidiando con ese problema durante horas. – stephband

Cuestiones relacionadas