Cron は常にほとんど空の環境で実行されます。 HOME 、 LOGNAME 、および SHELL 設定されています;非常に限られた PATH .したがって、実行可能ファイルへの完全なパスを使用し、cron を使用するときにスクリプトで必要な変数をエクスポートすることをお勧めします。 .
cron で環境変数を設定する方法はいくつかあります 、しかし、それらはすべて、スクリプトで設定することになります.
アプローチ 1:
スクリプトで必要な各変数を手動で設定します。
アプローチ 2:
プロフィールを参照してください:
. $HOME/.bash_profile (または . $HOME/.profile )
(通常、上記のファイルは他のファイルをソースすることがわかります (例:~/.bashrc --> /etc/bashrc --> /etc/profile.d/* ) - そうでない場合は、それらも入手できます。)
アプローチ 3:
環境変数をファイルに保存します (目的のユーザーとして実行します):
env > /path/to/my_env.sh
次に、cron スクリプトを介してインポートします:
env - `cat /path/to/my_env.sh` /bin/sh
アプローチ 4:
場合によっては、グローバル cron を設定できます /etc/default/cron の変数 .ただし、これらはすべての cron に対して設定されるため、これにはリスクの要素があります。