Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

Re^4: Ping sweep with reporting

by StarkRavingCalm (Sexton)
on May 17, 2007 at 20:19 UTC ( #616105=note: print w/ replies, xml ) Need Help??


in reply to Re^3: Ping sweep with reporting
in thread Ping sweep with reporting

Ok, here's what I have:

#!/usr/bin/perl use strict; use warnings; my $ping = "/bin/ping"; while (<DATA>) { chomp; my $ping_out = `$ping $_ 2> /dev/null`; chomp ($ping_out); if ($ping_out !~ /bytes from/) { print "$_ isn't pinging\n"; } else { print "$_ is up\n"; } } __DATA__ myserver02

And here's the output:
root@stewie ~# perl pingsweep_pm.pl isn't pinging

Thoughts?


Comment on Re^4: Ping sweep with reporting
Download Code
Re^5: Ping sweep with reporting
by liverpole (Monsignor) on May 17, 2007 at 22:13 UTC
    Great ... now you're getting somewhere!

    The next step is to debug your results.

    First of all, what happens when you do the ping by hand?  To be on the safe side, you can formulate the whole command before executing it, so you can cut-and-paste:

    my $cmd = "$ping $_ 2> /dev/null"; print "Debug: command is '$cmd'\n"; my $ping_out = `$cmd`;

    So when you run that, you should get something like:

    Debug: command is '/bin/ping myserver02 2> /dev/null'

    What happens when you run that command (/bin/ping myserver02 2> /dev/null) at a shell prompt?  Does running ping directly produce the output you expect?

    If so, then try printing the output in the program, and compare it visually:

    my $ping_out = `$cmd`; chomp ($ping_out); print "Debug: ping results => '$ping_out'\n";

    Does it print the results you expect?  (ie. the results you get doing it by hand?)

    If there's a problem, you should now, most likely, know where it is.  Perhaps the remote server is down.  Or perhaps the output from ping isn't quite in a format that you expect.

    What happens when you follow these steps?  Are you able to find the bug and fix it?


    s''(q.S:$/9=(T1';s;(..)(..);$..=substr+crypt($1,$2),2,3;eg;print$..$/

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://616105]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (9)
As of 2014-07-28 11:03 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (196 votes), past polls