C - 拖尾文件并拦截输出

标签 c tail

我正在尝试构建一个使用 tail -f 尾随文件的 C 程序,但我希望它可以在任何时候将数据写入文件时对数据执行某些操作。

我是一名 JavaScript 程序员,因此下一个示例在 C 语言上下文中可能没有多大意义,但我想做的是:

#include <stdio.h>
#include <stdlib.h>

int main (){

    printf("Tailing file");
    system("tail -f read.txt", function(){

        // this callback is called everytime new data is outputted from tail
        doSomething();
    });
    exit(0);

}

我想做的事情可能吗?感谢您的帮助

最佳答案

我会在单独的长时间运行线程中实现类似 tail 的东西。 Here是一个如何使用 C 连续读取打开的文件的示例。

here你可以找到tail程序的来源

关于C - 拖尾文件并拦截输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21282647/

相关文章:

linux - 合并 head 和 tail 并输出文件

linux - tail -f <文件名>,同时打印行号

c - 从 Windows 上的蓝牙 COM 端口获取 FILE*

c - Visual Studio 2015 WDK 不工作

c - 如何使用gdb进入while循环?

c - 特殊情况下浮点乘法的结合性

使用 C 与 mbed 通信

linux - tail -f 总是使用 inotify 吗?

node.js - 有没有办法像我们在bunyan CLI 中显示的那样显示winston 日志文件?

list - 列表中最后一个元素的值