从带有参数的另一个perl脚本调用perl脚本

时间:2014-02-14 09:30:23

标签: arrays perl

我正在尝试调用perl1.pl,它位于另一个文件夹中,其中包含来自另一个perl脚本的开关,例如perl2.pl。 通常perl1被称为:

perl1.pl -arg $arg1 -arg2 $arg2

现在问题是$ arg1从程序perl2内部生成,而当执行perl2时,从交换机获得$ arg2。

perl2 -arg2 $arg2.

我尝试使用system命令调用perl1.pl,但它无效。有没有办法做到这一点? perl1中的参数也很少,它们始终需要用户接受。我不确定如何发送它们。

2 个答案:

答案 0 :(得分:1)

一些例子很有用。您可以使用反引号来捕获可执行文件的输出。

### in perl1
my $ret = `$perl2 -arg2 $arg2`;
chomp($ret);
print "ret: $ret\n";

答案 1 :(得分:0)

您可以使用CPAN模块IPC::System::Simple来捕获输出。有关详细信息,请查看此处:IPC::System::Simple

my $output = capture("some_command", @args);