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

再问:如何将标准输出(stdout)的内容读取到文件里

    来源: 互联网  发布时间:2016-01-07

    本文导语:  我想把一个程序运行过程中在终端输出的一些信息读取到一个文件里,然后进行一些处理,请问如何实现? 前两天问过这个问题,有人提供了用popen(const char* command,const char * type),可是应该用那一个command才能截获标准输...

我想把一个程序运行过程中在终端输出的一些信息读取到一个文件里,然后进行一些处理,请问如何实现?
前两天问过这个问题,有人提供了用popen(const char* command,const char * type),可是应该用那一个command才能截获标准输出(stdout)的内容呢?请各位大侠不吝赐教,谢谢了

|
FILE *fp;
char buff[2000];
fp =popen ( "这里是你的执行程序", "r")
memset ( buff , 0 , sizeof(buff) );
while ( !feof(fp) )
{
    fgets ( buff , 1000 , fp ) ; //读一行
    puts ( buff );
    ...
}
明白了么?

|
重定向阿:
  程序 >/tmp/msg.out

|
上面说错了,写了个测试程序:
#include  
#include  
#include  
#include  
#include  
#include  
#include  
 
 
int main() 

        int fd, stdout_fd= fileno(stdout); 
        fd = open("xxxooo.txt", O_CREAT|O_RDWR, 0666); 
 
        close(stdout_fd); 
        dup2(fd, stdout_fd); 
        printf("hello, world.n"); 
 
        close(fd); 
        return 0; 


|
程序1
FILE  *ptr;
if ((ptr = popen("ps -ef", "r")) != NULL) {
  while(fgets(buf, BUFSIZ, ptr) != NULL) {
    ...
    msgsnd(...);  //将消息读取出来用msgq发送出去。
    ...
  }
}
程序2
while(1){
    msgrcv(...); //接收消息
    ...          //其他处理 
}

给你提供个思路,具体实现你自己来解决吧
呵呵

|
运行这个程序的时候 io 重定向一下呗~ >>

|
再开个有名管道即可,不要再folk了

天地无极,乾坤借法

|
一个read,一个write ,没关系吧~~~ 或者,干脆,来个管道得了~

|
典型的管道。

|
管道的不需要一个一个的改了。

    
 
 

您可能感兴趣的文章:

  • 请问如何将标准输出重定向到标准输入?
  • 有关标准输入,标准输出等的弱问!送分
  • 如何在关闭标准输入输出之后重新打开它们
  • 关于标准输出的缓冲造成的死锁
  • daemon打起的C后台进程,怎么看标准输出?
  • 关于标准输出重定向的问题
  • 请问:怎么提取标准输出(stdout)的内容到别的地方显示?
  • 请问如何捕获"tar"命令的标准错误输出
  • emacs 如何显示标准输出
  • 如何捕获标准输出?
  • 怎样把标准输出指定到一个文件,这样我便不用关心运行时间长的程序的屏幕输出,待运行完后看文件里的内容就可以了吧?
  • 请问各位大侠:如何将标准输出定位到套接字?
  • 会者不难 !csh 中如何输出标准错误 不是2>&1 csh不支持这种语法的
  • UNIX下如何读取标准输出上的字符?
  • 如何把LINUX命令执行产生的标准错误信息输出到一个变量里?
  • 如何既定向到标准输出又定向到文件!
  • 无法使用管道命令或重定向标准输出
  • 求解!关于如何获取系统中其它进程的标准输出
  • 将标准输出同时重定向到屏幕和文件
  • 结果可不可以同时标准输出,并且写入文件
  • Linux下怎么样读取非标准输入设备键盘的值?
  • shell编程之一__DOS 下读取标准输入?
  • 请教linux(C语言)下标准ini文件的读取,写入?配置管理
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 关于标准输出的缓冲造成的死锁 iis7站长之家
  • 请问文件格式(如.htm,.avi)的标准该怎么找?
  • 标准I/O 与 文件I/O
  • ? 如何获得一个文件的日期?(标准C)
  • 关于标准.zip文件解压的问题
  • 请问,使用GTK如何显示标准的浏览文件夹的对话框?HILDON提供吗?
  • 怎样只使用unix的标准工具找出一个文本文件的最长的一行?
  • linux下用标准C如何创建一个unicode文件
  • linux中标准c如何将XImage对象数据保存到bmp或jpg文件
  • 使用标准SAX解析XML文档如何获取文档编码信息及约束它的dtd文件路径.
  • 2.6.x 下标准Modem 驱动是哪个或哪些文件
  • gcc与g++的区别和一般的标准库头文件怎么引用?
  • Linux下C++编程时的包含标准库的头文件问题
  • 标准嵌入式linux系统分区/文件系统规划是什么样的?
  • 如何传递参数给linux shell 脚本(当脚本从标准输入而不是从文件获取时)
  • hp-unix下用标准C开发程序,头文件的问题<在线,有答案就揭帖>
  • 投票: 向微软说不!——反对微软(Microsoft Office)文件格式成为ISO标准!
  • 初学Unix,问:标准级函数,如fopen,fclose;系统级函数open,close,两者什么关系?(在一篇讲文件操作的文章中看到的)
  • 关于标准C读文件的问题,急啊,怎么办呢?在线等!!!
  • 请问,在unix/linux 环境中有没有可以移动文件的C/C++的标准函数?相当于命令mv。
  • C++ I/O 成员 sync_with_stdio():同标准I/O同步
  • 有没有这样的软件:把一个不标准格式的JAVA原代码转换为具有标准(或比较标准)编码规范的代码。
  • php将标准字符串格式时间转换成unix时间戳_strtotime
  • 请问能否把JCombobox控件设成标准列表框(window标准风格)
  • C++准标准库boost库中文介绍
  • 我用管道作为一个程序的标准输入时,程序报错说不是一个终端不能做为标准输入,请问怎么样管道成为它的标准输入呢???具体错误信息见内
  • 标准c++四种强制类型转换方式介绍
  • 用标准件的方式来组装网页DIV布局-WEB标准网站设计心得
  • C++ STL标准模板库类String成员详细列表参考及示例代码
  • 当A,B程序都在不断读入标准输入的时候, 为什么往A标准输入里面输入的数据一定能被A读到,而不是被B读到?
  • HTML 标准颜色值实例代码表


  • 站内导航:


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

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

    浙ICP备11055608号-3