Perl上でシステムコマンド実行する際の小技メモ

普通に実行する

`$command`;
print `$command`;
system($command);

戻り値を受け取る

my $result = system($command);

標準出力を受け取る

my $result = `$command`;
open my $rs, "$command |";
my @rlist = <$rs>;
close $rs;
my $result = join '', @rlist;

標準エラー出力も受け取る

my $result = `$command 2>&1`;
open my $rs, "$command 2>&1 |";
my @rlist = <$rs>;
close $rs;
my $result = join '', @rlist;