123",(char*)NULL); exit(0); } wait(0); printf("hello world!n"); return 0; } 我想用ls -l命....">

当前位置:  技术问答>linux和unix

问个execl函数的问题?

    来源: 互联网  发布时间:2016-12-28

    本文导语:  #include  #include  #include  #include  #include  int main() { int pid; pid = fork(); if(pid == 0) { execlp("ls","-l>123",(char*)NULL); exit(0); } wait(0); printf("hello world!n"); return 0; } 我想用ls -l命令重定向到123文件里,这写法有什么...

#include 
#include 
#include 
#include 
#include 
int main()
{
int pid;
pid = fork();
if(pid == 0)
{
execlp("ls","-l>123",(char*)NULL);
exit(0);
}
wait(0);
printf("hello world!n");
return 0;
}
我想用ls -l命令重定向到123文件里,这写法有什么不对,应该怎么写?

|
ls程序并不理解>123的意思,楼主可以参考下这个链接http://topic.csdn.net/u/20091210/12/c4fc9cae-3d27-430c-9067-b03f636fbc33.html

|
if(pid == 0)
{
freopen("123", "w", stdout);
execlp("ls","ls", "-l",(char*)NULL);
exit(0);
}

|
直接用system就行了……system会创建新进程调用shell来执行这个程序,重定向是shell实现的。
你这样写反而复杂了。
当然你用popen打开"ls -l",并fread其结果也是可以了。

|
ls不能解释重定向,重定向要交给bash解释,"/bin/bash","ls","-l",">","123"

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • python下用os.execl执行centos下的系统时间同步命令ntpdate
  • 我想让vfork后就execl一进程,同时让execl出来的进程之间能相互通信,求助
  • 关于fork execl...进程名字..
  • 如何结束调用execl后启动的程序
  • execl()的调用 !
  • 如果得到 execl 启动的程序的进程PID
  • execle调用mysqldump总提示couldn't find table
  • 先 fork 子进程然后 execl 另一个可执行程序, 如何得到这个可执行程序结束的返回值?
  • 用execl实现重定向
  • Jsp中能创建,打开EXECL文件吗?如果行怎么读写数据?
  • word ,execl 中数据如何导入到数据库中??????
  • 请问在 linux 下如何使用 execl() 调用另一个多进程的程序?
  • 请问我用程序如何编辑Adobe Acrobat 5.0的pdf文件(生成报表)啊?或者如何才能将已生成的execl报表转换成pdf格式?
  • NOSQL iis7站长之家
  • 如何用Applet调用EXECLE文件
  • 求救:我应聘一家公司,老板出的题目是在Linux下用浏览器观看word或execl,我只需要一点资料先应付过去,或者一点思路也可以。这家公司我
  • 为什么C语言用execl执行bash shell脚本会出现Exec format error?
  • 先pipe() 然后fork() 子进程execl另一个可执行程序
  • asp.net上传execl文件后,在页面上加载显示(示例代码)
  • python实现linux服务器批量修改密码并生成execl
  • fork、execl创建多进程,出现一个僵死进程


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3