簡単な答えは、system()
引数を使用して別のスクリプトを呼び出したい場合に、おそらく使用したいということです。
use autodie;
system('./script2.pl', $arg1, $arg2);
# OR if you don't want to install autodie from CPAN
system('./script2.pl', $arg1, $arg2) == 0
or die "cannot run script2.pl: $!";
インタープリターを共有する必要がある場合は、おそらくこれをまったく別の方法で行いたいと思うでしょう。たとえば、簡単なスクリプトの場合、次のrequire
ように使用することがあります。
our $SHARED_VALUE = 0;
our $OTHER_VALUE = 42;
require 'script2.pl';
ではscript2.pl
、次を定義できます。
our ($SHARED_VALUE, $OTHER_VALUE);
がscript2.pl
require によってロードされると、これらの変数が設定されます。これはまだ最善の方法ではありません。
さらに良いのは、パッケージを使用してコードを共有することですが、それは質問の範囲を超えてしまいます。