execle

传入环境变量执行文件

头文件

#include < unistd.h >

函数原型

int execle(const char *pathname, const char *arg0, …., (char *)0, char *const envp[])

函数说明

execle()用来执行参数path字符串所代表的文件路径,接下来的参数代表执行该文件时传递过去的argv(0)、argv[1]……,最后一个参数必须用空指针(NULL)作结束。最后一个参数代表环境变量指针,key=value的格式

返回值

如果执行成功则函数不会返回,执行失败则直接返回-1,失败原因存于errno 中。

范例

#include <stdio.h>
#include <unistd.h>

int main(int argc, char *argv[]) {
    printf("entering main process\n");
    char *envp[] = {"A=1",NULL};
    execle("/bin/env","env",NULL,envp);
    return 0;
}

执行

[root@iz2zecj7a5r32f2axsctb9z exec]# ./execle
entering main process
A=1
文档更新时间: 2021-03-05 11:13   作者:周国强