如何在system()命令中传递参数?

时间:2014-11-09 21:18:19

标签: perl

我有一个abc.pl perl脚本,从这个脚本我使用system()命令执行另一个xyz.pl perl脚本。现在我想从system()命令传递一些参数,以便在xyz.pl scipt中使用它 我正在使用下面的代码,但我无法正确得到论据。

abc.pl
=======
{
   my @cmd = "xyz.pl" . "arg1" . "arg2";
   system($cmd)
}

xyz.pl
======
{
  my @arg1 = shift(@ARGV);
  my @arg2 = shift(@ARGV);
}

你能建议我解决方案吗?

1 个答案:

答案 0 :(得分:2)

system中所述,只需传递一个列表:

system PROGRAM LIST

因此,对于您的脚本,它将是以下内容:

# abc.pl

my @cmd = ("xyz.pl", "arg1", "arg2");
system(@cmd)