perl はサブプロセスを実行する際および -S
を用いた場合
スクリプトを探す際に PATH
を使用する。
chdir
を引数なしで使う場合、HOME
または LOGDIR
を用いる。
これら以外では、 実行時にスクリプトおよび子プロセスから環境変数を使用可能にすることを除いて、 perl は環境変数を用いない。 しかし、setuid されたスクリプトでは、 用心して何よりも最初に必ず以下の行を実行するのがよいだろう。 これはユーザに嘘をつかせないためである(just to keep people honest)。
$ENV{'PATH'} = '/bin:/usr/bin'; # or whatever you need $ENV{'SHELL'} = '/bin/sh' if $ENV{'SHELL'} ne ''; $ENV{'IFS'} = '' if $ENV{'IFS'} ne '';