У меня есть этот небольшой фрагмент кода в операторе while(<PS>)
и он не будет выполняться и считывать выходные данные open(PS,"blabla")
кода.
Как мне решить это?
#!/usr/bin/env perl
#
my $IPendnum = 1;
my $IPrange = 0;
my $START = 1;
while ($START == 1) {
print "Pinging IP : 192.168." . $IPrange . "." . $IPendnum . "\n";
open (PS, "fping 192.168." . $IPrange . "." . $IPendnum);
while(<PS>) {
chop ($_);
if (/is alive/) {
print "The following IP : 192.168." . $IPrange . "." . $IPendnum . " is online! \n";
} else {
print "The following IP : 192.168." . $IPrange . "." . $IPendnum . " is currently offline! \n";
}
}
if ($IPendnum >= 255) {
$IPrange += 1;
$IPendnum = 1;
} else {
$IPendnum += 1;
}
print "Moving to the next IP address \n";
sleep(1);
}