我已经写了代码来获得一个网站的网址,然后搜索字符串,然后该字符串(实际是序号)的硬编码数比较Perl代码举止怪异
#!/usr/bin/perl
use LWP::Simple;
my $oldversion =36;
$pageURL="http://www.google.com/isos/preFCS5.3/LATESTGOODCVP/";
my $simplePage=get($pageURL);
my $newPage = "$simplePage";
my $str = (split("href=\"CVP-LATEST-5.3.0.",$newPage))[1];
my $version = substr("$str",0,2);
print $version; // HERE IT PRINT 37 WHICH IS CORRECT
if($version =! $oldVersion)
{
print $version; // BUT HERE IT PRINTS 1 WHICH IS WRONG. HOW IS IT CHANGING ?
##-- fetch the zip and save it as perlhowto.zip
my $status = getstore("http://www.google.com/isos/preFCS5.3/LATESTGOODCVP/CVP-LATEST-5.3.0.$version.iso", "CVP-LATEST-5.3.0.$version.iso");
}
else
{
print("Currently new version\n");
}
为什么改变价值 ?它无法下载该文件,因为这一点。
这是从你的实际代码剪切和粘贴?一个变量似乎将名称从$ oldversion更改为$ oldVersion。而你似乎使用了错误的评论类型。为什么你不使用“严格使用”和“使用警告”?如果您可能不太愿意发布实际编译的代码,那么它会更容易。 –
加上'use strict;使用警告;'到脚本的顶部,修复错误和警告,然后发布新代码。 – TLP
[总是。使用。严格。和。总是。使用。警告。](http://joelslinux.blogspot.com/2011/06/use-strict-and-warnings.html) –