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_HOMEet obtenir un chemin. C’est l’une de mes variables environnementales qui est définie dans mes ~/.profile. Cependant, il semble que les ~/.profilescripts ne soient pas chargés et, par conséquent, mes scripts échouent car la $ORACLE_HOMEvariable n'est pas définie.
Dans cette question, l'auteur mentionne la création d'un ~/.cronfileprofil 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 ~/Cronrépertoire. Un fichier ~/.cronfileressemble à 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 ~/.profilemais 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é?