- l(list) : 表示参数采用列表;
- v(vector) : 参数用数组;
- p(path) : 有 p 自动搜索环境变量 PATH;
- e(env) : 表示自己维护环境变量;
#include <unistd.h>
int execl(const char *path, const char *arg, ...);
int execlp(const char *file, const char *arg, ...);
int execle(const char *path, const char *arg, ...,char *const envp[]);
int execv(const char *path, char *const argv[]);
int execvp(const char *file, char *const argv[]);
- 如果函数名包含
p
(如execlp
、execvp
),则参数用file
,系统会从PATH
环境变量中查找可执行文件 - 如果函数名不包含
p
(如execl
、execv
),则参数用path
,必须提供完整路径或相对路径,否则会失败
arg 第一个参数一般是执行的命令本身(约定)