execl vs execv,参数大小未知
Posted
技术标签:
【中文标题】execl vs execv,参数大小未知【英文标题】:execl vs execv with unknown argument size 【发布时间】:2012-11-22 07:57:47 【问题描述】:情况是这样的:我必须在我的项目中使用 execl 和 execv ,问题是如果参数大小未知但路径已知,我应该如何使用 execl ?或者我应该每次都使用 execv 。它们之间有什么区别?
例如,如果用户输入: gcc a.c -o a.out 或在另一行输入 ls -l 我如何在 execl 或 execv 中执行它们? ps:我可以找到路径,或者用户可以输入。
另一个主要问题是,如果我有多个路径,我如何分隔我的命令所在的正确路径,如果其他情况,我应该尝试每个路径吗?
【问题讨论】:
【参考方案1】:当您知道参数列表的大小时使用execl
,当您必须动态构造参数列表时使用execv
。
我不明白第二个问题。但是你不应该在 SO 的一篇文章中问两个问题。用你的第二个问题开始另一个问题,并更清楚地解释你在问什么。
【讨论】:
以上是关于execl vs execv,参数大小未知的主要内容,如果未能解决你的问题,请参考以下文章
linux进程---exec族函数(execl, execlp, execle, execv, execvp, execvpe)