16.1 プログラムから出力を収集する

プログラムを実行したときに、その出力を収集して、変数に保存したい。

  • バッククォートを使用する
$output = `program args`;  # 1個の複数行文字列に出力を収集する
@output = `program args`;   # 各要素に1行ずつ割り当てた配列に出力を収集する
  • パイプを使用する
open(my $fh, "-|", "program", @args) or die;
while(<$fh>) {
  $output .= $_;
}
close $fh;