Comment puis-je exécuter une commande cron avec des variables d'environnement existantes?
Si je suis à l'invite du shell, je peux taper echo $ORACLE_HOME
et obtenir un chemin. C’est l’une de mes variables environnementales qui est définie dans mes ~/.profile
. Cependant, il semble que les ~/.profile
scripts ne soient pas chargés et, par conséquent, mes scripts échouent car la $ORACLE_HOME
variable n'est pas définie.
Dans cette question, l'auteur mentionne la création d'un ~/.cronfile
profil définissant des variables pour cron, puis il effectue une solution de contournement pour charger toutes ses commandes cron dans des scripts qu'il conserve dans son ~/Cron
répertoire. Un fichier ~/.cronfile
ressemble à une bonne idée, mais le reste de la réponse semble un peu lourd et j'espérais que quelqu'un pourrait me dire un moyen plus facile d'obtenir le même résultat.
Je suppose qu'au début de mes scripts, je pourrais ajouter quelque chose du genre source ~/.profile
mais cela semble être redondant.
Alors, comment puis-je faire en sorte que mes scripts cron chargent les variables à partir de mon profil de shell interactif?
source ~/.profile
à un programme est-il redondant? Les programmes héritent de leur environnement du programme appelant. Si ce programme d’appel n’est pas votre shell, comment le programme en question obtiendra-t-il l’environnement souhaité?