// $Id: fork2.c,v 1.3 2004-10-07 20:03:19+09 kaiya Exp $ #include #include #include main(int argc, char* argv[]){ pid_t ch; char buf[100]; while(fgets(buf, 100, stdin)!=NULL){ buf[strlen(buf)-1]='\0'; if((ch=fork())==0){ // child execl(buf, buf, NULL); }else if(ch>0){ // parent sleep(10); ch=wait(0); printf("done %d\n", ch); }else{ // fail fprintf(stderr, "fork fail"); exit(1); } } }