• ベストアンサー

Perl エラーログを指定の場所に出力する場合

以下のよーに指定すればエラーログの場所を指定する事ができますが、 # エラーログ BEGIN{ open ( STDERR, ">>./log/err_log/err.txt" ); } たとえば変数にファイル名を入れて指定する場合は、 $err_log = "./log/err_log/err.txt"; BEGIN{ open ( STDERR, ">>$err_log" ); } とするとエラーが出てしまいます。変数に入っているものを指定するにはどうすればいいでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.1

BEGINブロックは一番最初に実行されます。 この場合、$err_log = "./log/err_log/err.txt"; より前です。 なので、open時の$err_logは空です。 $err_log=をBEGINブロックに入れるか、openをBEGINブロックから出すか、になります。

nakisan2011_12
質問者

お礼

ありがとうございます。 >BEGINブロックは一番最初に実行されます。 これで理解しました!

関連するQ&A