首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >call_usermodehelper / call_usermodehelperpipe使用率

call_usermodehelper / call_usermodehelperpipe使用率
EN

Stack Overflow用户
提问于 2011-08-22 12:14:31
回答 2查看 6.7K关注 0票数 5

我遵循了这个关于从内核调用用户应用程序的优秀文档:http://www.ibm.com/developerworks/linux/library/l-user-space-apps/index.html

但我现在感兴趣的是如何从已经运行的应用程序中获得输出。我尝试传入重定向操作符,以将输出写入文件。例如:

代码语言:javascript
复制
char *argv[] = { "/usr/bin/ls", ">>", "/tmp/list", NULL};
call_usermodehelper(argv[0], argv, envp, UMH_WAIT_PROC);

没有这样的运气。我偶然发现了call_usermodehelperpipe,想知道这是不是我想要的,但我还没有掌握如何使用它,也没有在上面找到任何像上面这样的文档。

提前感谢您的建议/帮助!

EN

回答 2

Stack Overflow用户

发布于 2011-08-22 21:11:14

>>不是ls的参数,它是外壳中的东西。可以使用/bin/sh -c "ls >> /tmp/list"(在shell中)对其进行解析。在C中,这是:

代码语言:javascript
复制
char *argv[] = { "/bin/bash", "-c", "/bin/ls >> /tmp/list", NULL};
票数 4
EN

Stack Overflow用户

发布于 2011-08-22 20:38:03

您不能使用usermodehelper代码来执行此操作,因为它只支持在stdin连接到管道的情况下运行进程。

您可以复制它的功能,将____call_usermodehelper更改为覆盖stdin之外的stdout

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7143105

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档