Perlのデータセクション__DATA__
から読みやすいです。Perlのデータセクションへの書き込み
foreach (<DATA>) {
print("- $_");
}
__END__
1
2
The End of The End
を生成します:
- 1
- 2
- The End of The End
私はセクションにデータを書き込むのいずれかのきちんとした方法を発見していないが 次のコードは、既存のDATA
ハンドルを使用しています。 たとえば、私は次のことを試してみた:expectetとしてSTDOUT
とSTDERR
作品に
use feature say;
say STDERR 'Some Error';
say STDOUT 'Some Message';
say DATA 'Some Data';
__DATA__
foo bar
印刷:
perl write.pl 2> /dev/null
Some Message
しかしDATA
への印刷は全く何もしない:
tail -2 write.pl
__DATA__
foo bar
私はCPANからいくつかのモジュールも見てきましたが、私はいつものサポートを見つけました。ではなく、と書いてください。です。 ヒントや助けてくれてありがとう!
。代わりに別のデータファイルを使用してください。 – shawnhcorey
これは悪い考えかもしれませんが、これまで(それまではテストできなかったかもしれません)いくつかのファンキーなギミックツールには便利です。私はそれを行うための純粋な方法を探しています(何らかの純粋な方法が存在する場合)。狂った方法はおそらく自分のスクリプトでファイルハンドルを開くことです...もしこれが可能であれば? –
DATAファイルハンドルに「書き込み」できません。 '$ 0'を"開く "ことができ、それを探したり書き込んだりできます。しかし、これは良い考えではありません。 – Sobrique