LinuxÒÁµéÔ°ÂÛ̳'s Archiver

mouse81 ·¢±íÓÚ 2004-2-11 15:54

ÇëͬÈÊÃǰï½â´ðһЩÎÊÌ⣡СµÜÏÈл¹ý

СµÜ¸Õѧperl²»¾Ã£¬Çë°ïæ¿´¿´Õâ¸ö³ÌÐò°ïÎÒ½â´ðһЩÎÊÌ⣡
#!/usr/bin/perl -w
use strict;
my $ip;
my $i;
my $j=0;
my $n=0;

if(-e "ip_dns.txt" and -w "ip-dns.txt"){
rename("ip_dns.txt","old.txt") or die "error:$!";
}
open(FILE,">ip_dns.txt") or die"open file error:$!";
open(NOUSE,">nouse.txt") or die "open file error:$!";
foreach $i (1..254){
        $ip="192"."\."."168"."\."."0"."\."."$i";
        my @cmd=`ping -a -n 1 $ip`;
        if($cmd[3]=~/^Reply/){
           my(undef,$hostname,undef)=split(/ /,$cmd[1],3);
           if($hostname!~/(\d+\.\d+\.\d+\.\d+)/){
              print "ip"."  "."$hostname\n";
              print FILE "$ip"."  "."$hostname\n";
              $n++;
           }
         }else{
           print "$ip"."   "."no use!"."\n";
           print NOUSE "$ip"."   "."δʹÓÃ"."\n";
           $j++;
        }
}
  print FILE "×ܹ²ËÑË÷µ½ÁË$n¸öIPÓëDNS¶ÔÓ¦ÁÐ!";
  close FILE;
  print NOUSE "×ܹ²ÓÐ$j¸öIPµØÖ·Î´Ê¹ÓÃ!";
  close NOUSE;
ÆäÖÐ
1¡£ÎÒ¶ÔÈçºÎÔÙperlÖÐÈçºÎʹÓÃÃüÁî²»Çå³þ£¬@cmdÊÇÒ»¸öÊý×éΪʲôÄܹ»Ö´ÐÐpingÄØ£¿
2¡£»¹ÓоÍÊÇ·µ»ØÖµµÄÎÊÌ⣿$cmd[3]ÊÇÊý×é@cmdµÄÔªËØÎªÊ²Ã´ÊÇpingµÄ·µ»ØÖµÄØ£¿
3¡£Õâ¾ä»°²»¶®my(undef,$hostname,undef)=split(/ /,$cmd[1],3);
4¡£¾ÍÊǶÔÓÚһЩ³öÏÖÔÚ³ÌÐòÀïµÄÈç$_ºÍ@_µÈµÈ£¬ËûÃÇÓÐʱÊÇÕâ¸öÒâ˼ÓÐʱÓÖÊÇÄǸöÒâ˼£¬ÇëÎÊÔÚʲôµØ·½Äܹ»²éµ½ËûÃǵÄÓ÷¨
5¡£¶ÔÓÚuseÖÐʹÓõÄÄ£¿é£¬Ä£¿éÖÐËùÓеĺ¯ÊýÔÚlinuxÏÂʹÓÃʲôÃüÁî¿ÉÒԲ鵽
лл£¡£¡£¡£¡£¡

dearvoid ·¢±íÓÚ 2004-3-2 12:58

ȱ·¦ Perl ×î»ù±¾µÄ¸ÅÄî, ½¨Òé»ØÈ¥¿´Êé

Ò³: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.