use warnings; use strict; my $pid = fork(); my $cnt = shift; my $cmd_cnt = shift; defined($cnt) or $cnt = 0; defined($cmd_cnt) or $cmd_cnt = -1; my @funny = ("shut the hell up, I'm counting here!", "you talk too much, human!", "if you speak again I'll hurt you!", "die die die die die diedie die die die die diedie die die die die diedie die die die die diedie die die die die diedie die die die die diedie die die die die diedie die die die die diedie die die die die diedie die die die die diedie die die die die diedie die die die die diedie die die die die diedie die die die die diedie die die die die diedie die die die die diedie die die die die diedie die die die die die", "there you said something, happy now?"); if ($pid) { #parent process while(1) { $cnt++; print "PC1: $cnt\n"; sleep 1; system("perl 2.pl $cnt $cmd_cnt") or die "Error $!"; exit; } } elsif (defined($pid)) { #child process while (my $command = ) { chomp($command); $cmd_cnt++; print "you said: $command\n"; print "PC1: $funny[$cmd_cnt] $cmd_cnt\n"; sleep 1; system("perl 2.pl $cnt $cmd_cnt") or die "Error $!"; exit; } } else { }