0

我使用的glibc版本没有这个execvpe功能。但是,我需要那个确切的功能来完成我想要做的事情。用户将传入一个参数列表,该列表是他们的 linux 命令供我运行(及其参数列表)。这是它的样子:

foo.c

int main(int argc, char *argv[], char *envp[])
{
    char * newenvp[] = ...;
    execvpe(argv[1], &argv[1], newenvp);
}

示例用法

foo echo -e "Hello World.\n"

有没有替代的解决execvpe方法execle

4

1 回答 1

0

我相信我已经解决了我自己的问题。使用的解决方法execvpe是使用setenv后跟execvp. 我相信功能是一样的:

int main(int argc, char *argv[], char *envp[])
{
    setenv("MYVAR", "MYVALUE", 1);
    /* More calls to setenv can be used if needed. */
    execvp(argv[1], &argv[1]);
}
于 2013-04-22T17:50:56.813 回答