• このエントリーをはてなブックマークに追加

メモ

#!/bin/bash
HOME=/home/issm
APP_BASEDIR=$(cd $(dirname $0)/.. && pwd)
APP_PERL="5.14.3@myapp"
 
source $HOME/perl5/perlbrew/etc/bashrc
perlbrew use $APP_PERL
 
carton exec -I$APP_BASEDIR/local/lib/perl5 -- perl $@

こんな感じのシェルスクリプトを /path/to/myapp/bin/app_perl のように置いておけば,

% /path/to/myapp/bin/app_perl /path/to/myapp/script/hfupdate.pl --date=2013-03-14
% /path/to/myapp/bin/app_perl /path/to/myapp/script/foobar.pl -n=100
% /path/to/myapp/bin/app_perl /path/to/myapp/script/hoge.pl

な感じで,そのアプリケーションの perl 環境の下でスクリプトを実行できます.

carton で管理する方式に移行したアプリケーションがあって,それに関連する cron ジョブが 20 とか 30 とかあった場合,それらを書き換えるときなどに重宝するんじゃないかな,などと思っています.