1. 程式人生 > >Linuxc高階程式設計之程序5

Linuxc高階程式設計之程序5

int main()

 int a=fork();
 atexit(cpexit);
 if(a<0)
 {
  printf("fork error");
 }
 else if(a==0)//child1
 {
  if(execlp("/home/jincheng/5/tt6","tt6",NULL)>=0) 
  {
   printf("execlp succes!");//->atexit(cpexit)
  }
  else
  {
   printf("error");
   exit(-1);//->atexit(cpexit)
  }
 }
 else
 {
  wait();
  int b=fork();
 if(b<0)
 {
  printf("fork error");
 }
 else if(b==0)//child2
  {
  printf("USER=%s\n",getenv("USER"));
  system("ls -li /home");
  char *envp[]={"USER=zhangsan",NULL};
   if(execle("/usr/bin/env","env",NULL,envp)>=0)
   {
    printf("execle succes!");
   }
   else
  {
   printf("error");
   exit(-1);
  }
  
  }
 }