0

我有一个 Perl 脚本,其中包含一些调用一个 URL 的代码。基于通过 url 传递的参数,指向用于在数据库中存储一些数据的 servlet 的 URL。我正在使用下面的代码,但未能调用 url 并且无法将数据存储在数据库中。

#!/appl/teamsite/iw-perl/bin/iwperl

for (@ARGV) { printf "%d %s\n", $i++, $_};
my $environment=$ARGV[0];
my $jobid = $ARGV[1];
my $taskID = $ARGV[2];
my $workArea= $ARGV[3];
my $jobDocument = $ARGV[4];

my $url = "http://localhost:7001/JCreationServlet?command=build"."&environment=".$ARGV[0]."&jobID=".$ARGV[1]."&taskID=".$ARGV[2]."&workArea=".$ARGV[3]."&jobDocument=".$ARGV[4];

print "Url is $url\n";

'wget '.$url;

请帮助我,以便我能够调用该 URL。

4

3 回答 3

1
'wget '.$url;

应该是反引号,如果你希望它被执行

`wget $url`
于 2013-01-17T15:24:48.493 回答
0

您可以使用 ` wget $url`,而不是您所拥有的,这将解决它。但是,我建议使用系统调用,因为它是更好的做法:

system("wget",$url);

但是,如果您出于某种原因需要输出,那么最好使用反引号并像这样捕获它:

my $response = `wget $url`;
于 2013-01-17T19:38:31.220 回答
0

在您的代码中:

'wget '.$url;

只是一个字符串。

请参考this来执行外部命令。

于 2013-01-17T19:07:46.990 回答