从Java到Perl脚本的数据检索

时间:2013-07-26 07:21:31

标签: perl

我从Java运行一个进程来运行Perl脚本,如下所示,

Runtime.getRuntime().exec(new String[] {"perl","C:\\Perl\\bin\\try.pl", "uname=test"});

如何在Perl脚本中获取数据。我尝试了以下操作:$uname@uname${uname}

有人可以提出任何其他想法吗?

1 个答案:

答案 0 :(得分:3)

您无法访问Perl中的命名命令行参数。使用特殊变量@ARGV传递参数,您可以直接使用它,也可以使用提供附加功能的模块进行操作。

如果您不关心命名参数,那么如果您有以下Java调用:

Runtime.getRuntime().exec(new String[] {"perl","C:\\Perl\\bin\\try.pl", "test"});

然后以下Perl代码段应该可以工作:

print "First argument is: $ARGV[0]\n";
print "The argument is, indeed, 'test'!\n" if ($ARGV[0] eq 'test');

另一方面,如果您确实需要命名参数,那么您将需要查看提供此类功能的模块。例如,this question的答案建议GetOpt::Long