foreach $element (@updevices) { @ip = split(':',$element); die "Could not fork()\n" unless defined ($pid = fork); if ($pid) { push @pids, $pid; next;} system("ping $ip[2] 2 > /dev/null"); $result = $?; if ( $result != 0) { print "$ip[0] is dead\n"; exit 1; } exit 0; } for $pid(@pids){ waitpid $pid, 0; if ($? != 0) { $i++; } } print "$i dead devices\n";