Vous pouvez définir des variables d'environnement dans la crontab elle-même lors de l'exécution de crontab -e
depuis la ligne de commande.
LANG=nb_NO.UTF-8
LC_ALL=nb_NO.UTF-8
# m h dom mon dow command
* * * * * sleep 5s && echo "yo"
Cette fonctionnalité n'est disponible que pour certaines implémentations de cron. Ubuntu et Debian utilisent actuellement vixie-cron qui permet de les déclarer dans le fichier crontab (également GNU mcron).
Archlinux et RedHat utilisent cronie qui ne le fait pas autorise la déclaration des variables d'environnement et génère des erreurs de syntaxe dans le cron.log. Une solution de contournement peut être effectuée par entrée :
# m h dom mon dow command
* * * * * export LC_ALL=nb_NO.UTF-8; sleep 5s && echo "yo"
J'ai une autre solution à ce problème :
0 5 * * * . $HOME/.profile; /path/to/command/to/run
Dans ce cas, il sélectionnera toutes les variables d'environnement définies dans votre $HOME/.profile
fichier.
Bien sûr $HOME
n'est pas non plus défini, vous devez le remplacer par le chemin complet de votre $HOME
.