#!/usr/bin/perl -w use strict; use POSIX; my @list=("server1","server2","server3","server4","server5","server6","server7","server8"); my $count = 0; my $pcount = 5; foreach (@list) { chomp ; my $real_host = $_; if( (my $pid = fork()) == 0) { print "Processing - $_ \n"; my $wait=ceil(rand(10)); print "Wait:$wait \n"; sleep($wait); print "Exit Status= $? \n"; if($? ==0) { print "$_ Exit successfully \n"; } else { print "$_ Does not Exit successfully \n"; } print "Completing - $_ \n"; exit; } $count++; while($count >= $pcount) { wait(); $count--; } } while(wait() != -1){}