- 316 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 12:27:16 ]
- >>315
先ず先に<>はSTDINとARGV両方を示す事を理解しろ。 プログラム引数に何か渡されたら、< であろうが、ARGVとして扱われ、 ARGVがあれば、暗黙のうちに<>は<ARGV>として挙動する。 従って ==== while(<>){ print "ARGV: $_" } while( ($_=<>) !~/^$/ ){ print "STDIN: $_"} ==== をhoge.plとして保存して以下の様に実行した場合、 perl hoge.pl < hoge.pl は、ARGVの中身を全てプリントした後にSTDINの処理をする (STDIN処理は、何も入力せずにreturnで終了)。 外部ファイルにシグナルを入れて流し込むのが仮に可能だと しても、それをどのタイミングで使うかは書き手に任される訳だから、 素直に終了フラグを立てるのが普通では無いの?
|

|