【问题标题】:nslookup script to loop through IP addresses in perlnslookup 脚本循环遍历 perl 中的 IP 地址
【发布时间】:2014-10-16 15:00:05
【问题描述】:

Stackoverflow 社区,

我是 PERL 脚本的新手,需要帮助 [此脚本的一部分来自 Internet 来源] 对文件中的 IP 地址列表进行 nslookup 并循环遍历每个地址,直到完成。如果域名不存在则执行 X,如果存在则执行 Y。

以下信息:

-existent - is a key word when nslookup aborts
name - is a key word when it works
listofhosts - is my ip address list

非常感谢您的任何帮助

#!/usr/bin/perl
#!c:\perl64\bin

use strict;
use warnings;

my $noname=-existent;
my $name=name;

open IPADDRESSES,("c:\\perl64\\scripts\\listofhosts.txt") or die("File could not be opened :$!");
my @list=<IPADDRESSES>;
foreach my $list(@list);
my $results=`nslookup $list`;
CHOMP ($list);
if ($noname) {
    print ("no name")}
elsif ($name){
    print ("IP address $list:\n");
    print ("=\n");
    print ("DNS name:$results\n");
}

close (IPADDRESSES); 

【问题讨论】:

  • 您的脚本在运行时会返回错误。您是否尝试过纠正这些错误?
  • 欢迎使用 SO 和 Perl。您的脚本有两个语法错误。第 8 行的裸词“名称”。第 12 行没有块的 for 循环。可能应该先解决代码中的问题,然后编辑您的问题。
  • 你有什么问题?
  • Socket 的 inet_ntoa(inet_aton($name_or_ip)) 将解析 DNS 名称。 (它还会检查您的 hosts 文件,或您的操作系统通常会执行的任何其他检查)。
  • 感谢大家的反馈 - 我将努力纠正这个问题并试一试,我会告诉你我的发现 - 更多内容即将发布。 . .

标签: perl nslookup


【解决方案1】:

还可以尝试查看Net::Nslookup 而不是使用nslookup ...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-08
    • 2021-03-20
    • 2011-12-23
    • 1970-01-01
    • 2016-08-20
    • 2021-12-06
    相关资源
    最近更新 更多