Perlでパイプオープン
Perlでは、ファイルアクセスと同様な感じでパイプにアクセスができます。
ここで云うパイプとは、標準入出力のデータが流れ込むパイプです。
つまり、標準入出力のデータをあたかもファイルからのデータとして扱えるのです。
- パイプ出力用でオープン open (OUT, "| コマンド")
- パイプ入力用でオープン open (IN, "コマンド |")
コマンドからパイプ入力用にオープン open(IN,"ls -l |"); @cmd =http://www.kent-web.com/perl/chap6.html; close(IN); foreach $cmd (@cmd) { print "$cmd \n"; } <解説> ls -l (カレントディレクトリ内のファイル名を取得) というコマンド を実行し、その結果を配列@cmdに格納し、表示する。 コマンドへパイプ出力用にオープン open(OUT,"| /usr/sbin/sendmail"); print OUT "HELO \n"; close(OUT); <解説> sendmailへ HELOコマンドを出力。