免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 4359 | 回复: 10
打印 上一主题 下一主题

求教:关于execl的问题。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-04-01 22:15 |只看该作者 |倒序浏览
学习《Unix环境高级编程》时遇到一个问题。

程序(第8章11节的例子):

#include "apue.h"
#include <sys/wait.h>

int
main(void)
{
        pid_t   pid;

        if ((pid = fork()) < 0) {
                err_sys("fork error");
        } else if (pid == 0) {                  /* child */
                if (execl("/home/donnie/bin/testinterp",
                                  "testinterp", "myarg1", "MY ARG2", (char *)0) < 0)
                        err_sys("execl error");
        }
        if (waitpid(pid, NULL, 0) < 0)  /* parent */
                err_sys("waitpid error");
        exit(0);
}

编译成功后。

运行结果为:

[donnie@localhost proc]$ cat /home/donnie/bin/testinterp
#! /home/donnie/bin/echoarg foo
[donnie@localhost proc]$ ./fig8.20
execl error: Permission denied
[donnie@localhost proc]$


书上说结果应该为:
   $ cat /home/donnie/bin/testinterp
   #!/home/sar/donnie/echoarg foo
   $ ./fig8.20
   argv[0]: /home/donnie/bin/echoarg
   argv[1]: foo
   argv[2]: /home/donnie/bin/testinterp
   argv[3]: myarg1
   argv[4]: MY ARG2


求解,谢谢了!

[ 本帖最后由 donnie0219 于 2008-4-1 22:17 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2008-04-01 22:17 |只看该作者
另外说一下,我运行环境为fc8.

论坛徽章:
0
3 [报告]
发表于 2008-04-01 22:55 |只看该作者
ls -l  /home/donnie/bin/testinterp
看看有没有执行权限。

论坛徽章:
0
4 [报告]
发表于 2008-04-02 11:36 |只看该作者
ok,我试试先,谢谢了。

论坛徽章:
0
5 [报告]
发表于 2008-04-02 11:44 |只看该作者
似乎有些改善,但是结果不对。


[donnie@localhost bin]$ pwd
/home/donnie/bin
[donnie@localhost bin]$ ll
total 8
-rwxrwxr-x 1 donnie donnie 32 2008-04-02 06:02 testinterp
[donnie@localhost bin]$ ../apue.2e/proc/fig8.20
execl error: No such file or directory
[donnie@localhost bin]$

比较晕,文件名没写错啊!

论坛徽章:
0
6 [报告]
发表于 2008-04-02 11:57 |只看该作者
好了,自己解决了,谢谢三楼大哥。

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
7 [报告]
发表于 2008-04-05 14:06 |只看该作者
原帖由 donnie0219 于 2008-4-2 11:57 发表
好了,自己解决了,谢谢三楼大哥。

这么吝于分享自己的经验?

论坛徽章:
0
8 [报告]
发表于 2008-04-06 17:43 |只看该作者
APUE下的东西不能完全照搬,有的地方没有完全说明,可能出现非预期结果。。。。。。灵活运用

论坛徽章:
0
9 [报告]
发表于 2010-06-23 12:54 |只看该作者
好了,自己解决了,谢谢三楼大哥。
donnie0219 发表于 2008-04-02 11:57


请问大哥是怎么解决的,我也遇到了同样的问题

论坛徽章:
0
10 [报告]
发表于 2010-06-23 15:26 |只看该作者
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP