Crontabに変数を保存するにはどうすればよいですか?私はそれがシェルではないことを理解していますが、私のアプリへのパスなどのような定数を持ちたいと言いますか?
考え?
おそらく最も一般的なVixie cronでは、シェルスクリプトとほぼ同じようにこれを行うことができます。
VARIABLE=value
PATH=/bin:/path/to/doathing
0 0 * * * doathing.sh $VARIABLE
マニュアルページには次のように書かれています:
Crontabのアクティブな行は、環境設定またはcronコマンドのいずれかです。環境設定は次の形式です。
name = value
ここで、等号(=)の前後のスペースはオプションであり、valueの後続の非先行スペースは、nameに割り当てられた値の一部になります。値の文字列を引用符(単一または二重だが一致)で囲んで、先頭または末尾の空白を保持できます。名前の文字列は、先頭、末尾、または内側の空白を保持するために、引用符で囲むこともできます(単一または二重ですが一致します)。
crontab
のmanページをチェックすると、Vixie cronがあるかどうかを確認できます。著者はPaul Vixieです。別のcronはこれをサポートする場合としない場合があります(たとえば、BusyBoxのcronはサポートしません)。その場合、シェルスクリプトでコマンドをラップし、代わりにそのスクリプトをcronから実行するのが最善のオプションです。実際、これは複雑なことを行うには良いことです。
Crontabをきれいに保つために、シェルスクリプトを呼び出して、スクリプトで楽しいことをするだけです。
Crontabに環境変数を配置できます。詳細については、crontab(5)
のマニュアルページを参照してください。