2012-01-17 11 views
124

Me gustaría configurar un trabajo para que se ejecute diariamente en el crontab raíz. Pero me gustaría ejecutarlo desde un directorio particular para que pueda encontrar todos los archivos que necesita, ya que la aplicación tiene un conjunto de rutas relativas.Crontab - Ejecutar en el directorio

De todos modos, ¿puedo decir a crontab que se ejecute desde un directorio en particular?

Respuesta

219

Todos los trabajos son ejecutados por un shell, por lo que inicie ese fragmento de shell por un comando para cambiar el directorio.

cd /path/to/directory && ./bin/myapp 
+0

En lugar de agregar una mayoría duplicar respuesta, permítanme añadir que se puede elegir qué shell (si necesita bash en lugar de pescado, por ejemplo) mediante el establecimiento de 'SHELL' en su crontab. –

+0

Entonces, este comando sería ejecutar la aplicación (almacenada en el contenedor) en otro directorio, ¿o no? Pero si ya tiene la aplicación instalada en el directorio correcto, el comando que puse en mi respuesta estaría bien, ¿verdad? Lo siento, solo quiero entender la pregunta. –

+5

+1. la solución de todas las demás preguntas relacionadas es volver a escribir el script con rutas absolutas. esto es exactamente lo que necesitaba –

Cuestiones relacionadas