+ -
当前位置:首页 → 问答吧 → FreeBSD下的execl等函数传参数有问题?

FreeBSD下的execl等函数传参数有问题?

时间:2010-09-16

来源:互联网

比如说:
  1. execl("sub", "-l", "/test", (char *)0);
复制代码
在子进程中就会不见了"-l"参数。

请问这是怎么回事?在Linux下不会这样的。

作者: juggler_cu   发布时间: 2010-09-16

去看看函数源代码呀

作者: macafee   发布时间: 2010-09-16

本帖最后由 langue 于 2010-09-16 15:44 编辑

我猜你用错参数了,execl(3) 第一个参数是可执行映像的路径,第二个开始才是 argv[n] (n=0, 1, 2, ..., argc), NULL。

例如:

execl("/bin/ls", "ls", "-l", (char *)NULL);

http://www.freebsd.org/cgi/man.cgi?query=execl&apropos=0&sektion=3&manpath=FreeBSD+8.1-RELEASE&format=html

作者: langue   发布时间: 2010-09-16

哇塞  LZ  注册时间2002-11-18  

作者: ppabc   发布时间: 2010-09-16



QUOTE:
比如说:在子进程中就会不见了"-l"参数。

请问这是怎么回事?在Linux下不会这样的。
juggler_cu 发表于 2010-09-16 15:00




    我的问题,没看清楚execl的参数说明,其实是从arg0开始的,怪不得读不到-l参数。

作者: juggler_cu   发布时间: 2010-09-16

真是千年道行一朝丧啊~~

作者: juggler_cu   发布时间: 2010-09-16