C语言 execv() 的路径查找



我正在尝试找到我当前的 PATH 以在我的 execv(( 命令中使用它,但我坚持弄清楚如何找到路径的任何提示?

要从环境中获取当前PATH变量(参见 environ(7((,请使用 getenv(3(。

所以代码:

char*curpath = getenv("PATH");
if (!curpath) { fprintf(stderr, "no PATHn"); exit(EXIT_FAILURE); };

缺乏PATH的可能性极小

然后使用 strchr(3( 迭代冒号curpath

当然,如果允许使用 execvp(3(,你应该更喜欢它。

要获取当前工作目录 (但这里不需要它( 使用 getcwd(3(。

相关内容

  • 没有找到相关文章

最新更新