⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 exectest.c

📁 基于linux的系统编程程序
💻 C
字号:
/* exec.c */
#include <unistd.h>
main()
{	
	/*定义参数*/
	char *envp[]={"PATH=/tmp",	"USER=lei",	"STATUS=testing",NULL};	
	
	char *argv_execv[]={"echo", "excuted by execv",	NULL};	
	
	char *argv_execvp[]={"echo", "executed by execvp", NULL};
	
	char *argv_execve[]={"env", NULL};	
	/*全部在子进程运行*/
	if(fork()==0)		
		if(execl("/bin/echo", "echo", "executed by execl", NULL)<0)	//调用echo命令,参数:executed by execl 
			perror("Err on execl");
		if(fork()==0)	
			if(execlp("echo", "echo", "executed by execlp", NULL)<0)//调用echo命令,参数:executed by execlp	
				perror("Err on execlp");	
			if(fork()==0)		
				if(execle("/usr/bin/env", "env", NULL, envp)<0)	//env命令,打印当前环境envp
					perror("Err on execle");	
				if(fork()==0)		
					if(execv("/bin/echo", argv_execv)<0)	 //echo命令,参数argv_execv指向的内容
						perror("Err on execv");	
					if(fork()==0)	
						if(execvp("echo", argv_execvp)<0)	//echo命令,参数argv_execvp指向的内容
							perror("Err on execvp");
						if(fork()==0)		
							if(execve("/usr/bin/env", argv_execve, envp)<0)		//env命令
								perror("Err on execve");
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -