|
发表于 2004-1-5 00:10:26
|
显示全部楼层
- #include <stdio.h>
- #include <sys/types.h>
- #include <unistd.h>
- #include <sys/wait.h>
- char *env_list[] = {"USER=kate", "PATH=/tmp", NULL};
- int main(void)
- {
- pid_t pid;
- if ( (pid=fork())<0 )
- {
- printf("fork error!\n");
- exit(0);
- }
- else if ( pid==0 )
- {
- if ( execle("/usr/peter/bin/printall", //pathname
- "printall","arg1","arg2", (char *) 0, //arguments
- env_list) <0 ) //enviroment
- printf("execle error!\n");
- exit(0);
- }
- if ( waitpid(pid,NULL,0) < 0 )
- {
- printf("wait error!\n");
- exit(0);
- }
- if ( (pid=fork())<0 )
- {
- printf("fork error!\n");
- exit(0);
- }
- else if ( pid==0 )
- {
- if (execlp ( "printall", //filename
- "printall", "arg1", (char *) 0 ) <0 ) //arguments
- printf("execle error!\n");
- exit(0);
- }
- exit(0);
- }
复制代码 |
|