Linuxc高階程式設計之程序5
阿新 • • 發佈:2019-01-07
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);
}
}
}
{
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);
}
}
}