質問

質問者:mune pl内から別のplの実行
困り度:
  • 困っています
requireとかサブルーチン化にしたりしないで、例えばただ単に01.plが終了した後に02.plを実行させる命令ってperlにありますか?
質問投稿日時:00/07/31 18:01
質問番号:5783
この質問に対する回答は締め切られました。
最新から表示回答順に表示良回答のみ表示

回答

良回答20pt

回答者:tty どういう目的なのかが読めなかったのですが、、、
たとえば 01.pl の最後に
system("perl 02.pl");
とつければ、実行場所やパス設定にもよりますが
実現可能かと。。。
プロセスが二つ立ち上がっちゃうから
system より exec のほうがいいのかな?
どちらにしてもあまりかっこよくないですね。(^^;
種類:回答
どんな人:素人
自信:参考意見
回答日時:00/07/31 18:42
回答番号:No.1
この回答への補足ありがとうございます。できました。
ついでにここで質問してしまうのですが、例えば01.pl内でグローバル変数に値を設定しても02.plへは引き渡されないのですが...
そのような時には、やはりサブルーチン化したほうが良いってことなのでしょうか?
この回答へのお礼この回答にお礼をつける(質問者のみ)

回答

 

回答者:noname#9414 回答ではなくてすみません。

サブルーチン化した方が、後々使うことが出来る
ので、効率はいいと思うのですが・・・

回答の方はtty様のがいいと思います。
ではでは☆
種類:回答
どんな人:関係者
自信:自信あり
回答日時:00/07/31 21:23
回答番号:No.2
この回答へのお礼この回答にお礼をつける(質問者のみ)

回答

 

回答者:tty 補足に対する回答ですが、
一度 perl を起動し、その中からまた別の perl を起動しているので、
01.pl と 02.pl の実行は別プロセスになりますから
グローバル変数の値は当然引き渡されませんよね。
01.pl 内で require で 02.pl を読み込みば引き渡されます。
種類:アドバイス
どんな人:素人
自信:自信あり
回答日時:00/08/01 10:56
回答番号:No.3
この回答へのお礼この回答にお礼をつける(質問者のみ)
最新から表示回答順に表示良回答のみ表示