GNU/Linux >> Tutoriales Linux >  >> Linux

¿Dónde puedo configurar las variables de entorno que usará crontab?

Puede definir variables de entorno en el propio crontab cuando ejecuta crontab -e desde la línea de comando.

LANG=nb_NO.UTF-8
LC_ALL=nb_NO.UTF-8
# m h  dom mon dow   command

* * * * * sleep 5s && echo "yo"

Esta característica solo está disponible para ciertas implementaciones de cron. Ubuntu y Debian actualmente usan vixie-cron que permite declararlos en el archivo crontab (también GNU mcron).

Archlinux y RedHat usan cronie que no permite que se declaren las variables de entorno y arrojará errores de sintaxis en el cron.log. Se puede realizar una solución alternativa por entrada:

# m h  dom mon dow   command
* * * * * export LC_ALL=nb_NO.UTF-8; sleep 5s && echo "yo"

Tengo una solución más para este problema:

0 5 * * * . $HOME/.profile; /path/to/command/to/run

En este caso, seleccionará todas las variables de entorno definidas en su $HOME/.profile archivo.

Por supuesto $HOME tampoco está configurado, debe reemplazarlo con la ruta completa de su $HOME .


Linux
  1. Cómo establecer, enumerar y eliminar variables de entorno en Linux

  2. Cómo configurar las variables de entorno de Linux con Ansible

  3. ¿Dónde está configurada la variable de entorno $HOME?

  4. ¿Puedo configurar el correo del sistema para usar un servidor SMTP externo?

  5. La ejecución de crontab no tiene las mismas variables de entorno que el usuario que ejecuta

Cómo establecer variables de entorno en MacOS

Cómo establecer y enumerar variables de entorno en Linux

Cómo establecer y enumerar variables ambientales en Linux

Cómo configurar y desactivar variables de entorno en Linux

¿Dónde se deben establecer las variables de entorno para Jenkins?

Variables de entorno de Linux