crontabでGRASSを動かすときのメモ。

crontabは定期的にコマンドを実行するためのコマンドなわけだが,特徴として,環境変数が保持されない,ということがあげられる。なんでそうなのかは,きっと理由があるのだろう。

ただちょいと困ったことに,GRASSの上でcrontabを使おうとすると,この環境変数が無いことが原因でGRASSのコマンドが使えなかったりするわけですよ,これが。

ということで結構うんうん悩んだので,解決法のメモ。
私の場合,CentOSにGRASSをインストールしているという変則的な環境なわけですが,GRASS(6.2です)の起動時には,

/usr/local/bin/grass62

というシェルスクリプトが走ることになります。
で,こいつの中身を見てみると実に単純で,

/usr/local/grass-6.2.3/etc/Init.sh

というスクリプトを走らせろ,としか書いてないわけです。
ならばということで,そいつを見に行くと,

# Set the GRASS_PERL variable
GRASS_PERL=/usr/bin/perl
export GRASS_PERL

# Set GRASS version number for R interface etc (must be an env_var for MS-Windows)
GRASS_VERSION="6.2.3"
export GRASS_VERSION

# Get the command name
CMD_NAME=grass62
(・・・以下略)

的なことが書かれておりますので,このうちGRASSの実行に必要な環境変数をcrontabで使用するスクリプトに登録して完了です。
で,どこが必要かというと・・・,すみまんせん,実際に動いたスクリプトを間違えて消してしまったので,どれか分かりません(汗

ということで,これからもう一度作業ですw