トップ 差分 一覧 ソース 置換 検索 ヘルプ PDF RSS ログイン

Perlで他のCGIを呼び出す

http://blog.goo.ne.jp/40vq77a80/e/6059f6386872b5d4a77f630b9d0f3a25

 exec関数を使う

exec コマンド/cgi [,引数] [,引数…]

exec関数は、引数をリストとして渡し、コマンド/cgiを実行する。実行後は親のPerlスクリプト(cgi)に処理は戻らない。ただし、ブラウザから親cgiを呼び出し→子cgiを実行した場合は、ブラウザには子cgiの実行結果が親cgiの実行結果として戻される。

oya-exe.cgi ( execで呼び出す場合 )

#!/usr/bin/perl

$str1 = "rain";
$str2 = "morning.";
exec ( "./child.cgi" , $str1 , $str2 );
print "OK"; #処理が戻らないので、この行は実行されない。

 system関数を使う

system コマンド/cgi [,引数] [,引数…]

system関数は、引数をリストとして渡し、コマンド/cgiを実行する。実行後は親のPerlスクリプト(cgi)に処理が戻る。system関数は実行した子コマンドが終了するのを待ち、その終了ステータスを返す。

oya-sys.cgi ( systemで呼び出す場合 )

#!/usr/bin/perl

$str1 = "fine";
$str2 = "morning.";
system ( "./child.cgi" , $str1 , $str2 );
print "OK"; #処理が戻るので、この行が実行される。

[カテゴリ: プログラミング言語 > Perl]



  • Hatenaブックマークに追加
  • livedoorクリップに追加
  • del.icio.usに追加
  • FC2ブックマークに追加

最終更新時間:2013年10月26日 11時09分04秒