my $ret1 = `date`; my $exit1 = $?; print STDERR "exit1=$exit1 ret1=$ret1"; my $pid; if($pid = fork) { $SIG{CHLD} = sub {wait}; print STDERR "$$: parent pid=$pid\n"; }elsif (defined $pid) { print STDERR "$$: child\n"; setpgrp(0, $$); exec "exec sleep 500 &" || die "Bad exec $!"; exit; } foreach my $i (1..5) { my $ret2 = `date`; my $exit2 = $?; print STDERR "exit2=$exit2 ret2=$ret2"; }