Linux 确定由进程修改的文件
我正在编写一个从Linux用户空间运行的程序,它会产生另一个进程。它如何确定生成的进程在完成后修改了哪些文件?您自己替换记录名称和模式的Linux 确定由进程修改的文件,linux,unix,Linux,Unix,我正在编写一个从Linux用户空间运行的程序,它会产生另一个进程。它如何确定生成的进程在完成后修改了哪些文件?您自己替换记录名称和模式的fopen(3)。调用它并解析您关心的输出。也许g++本身会生成其他进程?“strace-fF-efile程序”加上一些过滤可能会对您有所帮助。您是在编写生成的pgm,还是仅仅是一些您无法控制的现有pgm,而只是使用system()或类似工具?不编写生成的程序我认为这里的正确术语是“库插入”。这不是一个坏主意,但由于某种原因,在我试图监视的程序(g++)上似乎不
fopen(3)
。调用它并解析您关心的输出。也许g++本身会生成其他进程?“strace-fF-efile程序”加上一些过滤可能会对您有所帮助。您是在编写生成的pgm,还是仅仅是一些您无法控制的现有pgm,而只是使用system()或类似工具?不编写生成的程序我认为这里的正确术语是“库插入”。这不是一个坏主意,但由于某种原因,在我试图监视的程序(g++)上似乎不起作用。我只看到对/tmp中文件的访问。我不知道这个程序-谢谢你的提示!显示的内容远不止包装fopen(),但仍然无法捕获来自g++的写入内容。@balor:你在用g++做什么,而你不知道它写入了什么文件?通常它只修改一个文件,您可以在命令行中指定名称。