新しく作成されたファイルに文字列を書き込もうとする次の perl コードがあります。
open(OUT, ">$file") or die "file out error!\n";
print OUT $string;
通常、このコードは問題なく動作します。$file が存在するディレクトリへの書き込み権限がない場合、プログラムは失敗しますが、これは予想どおりです。ただし、「ファイル出力エラー!」を出力する代わりに、エラー メッセージとして、プログラムは単に終了コード 13 (アクセスが拒否されました) で終了します。
- ファイルに書き込めないのに open メソッドが成功するのはなぜですか?
- この場合、適切なエラー メッセージを取得するにはどうすればよいでしょうか。