我試圖削減打印列表中的端口數:爲什麼我在下面的Perl腳本中被警告使用未初始化的值?
A.B.C.D 80,280,443,515,631,7627,9100,14000
到最有趣的,我的那些:
A.B.C.D 80,515,9100
爲此,我使用這一位代碼:
foreach (@ips_sorted) {
print "$_\t";
my $hostz = $np->get_host($_);
my $port = 0;
my $output = 0;
$port = $hostz->tcp_ports('open');
if ($port == 80 || $port == 445 || $port == 515 || $port == 9100) {
$output = join ',' ,$port;
}
print $output;
print "\n";
}
我可能不需要說,它不工作。我得到這個:
A.B.C.D 0
Use of uninitialized value $port in numeric eq (==) at parse-nmap-xml.pl line **(line with if).
我們需要什麼是'$ hostz-> tcp_ports返回更多的信息( '開放')'。 – dolmen 2010-07-06 15:21:33
if($ port ~~(qw(80 445 515 9100)){...}' – Ether 2010-07-07 02:44:13