特定の Perl スクリプトの %ENV に変数を追加する方法

特定の Perl スクリプトの %ENV に変数を追加する方法

1 つのスクリプトでのみ表示される %ENV にさらに変数を追加したいのですが、
これは正しいのでしょうか、それとも他の方法があるのでしょうか?
$ENV{IM_ROOT} = $TC_ROOT;
$ENV{IM_DATA} |= $TC_DATA;

答え1

ハッシュとして割り当てることもできます。一種の追加です。

# cat fooenv.pl && ./fooenv.pl
#!/usr/bin/perl

%ENV = ( %ENV,
  'XX' => 'foovar',
  'YY' => 'barvar'
);

foreach $key (grep(/XX|YY/,keys(%ENV))){
  printf "key=$key=%s\n",$ENV{$key};
}
key=YY=barvar
key=XX=foovar

関連情報