我正在用C语言编写一个用于linux的程序,该程序在一段时间内每隔x秒扫描一次目录以进行修改,但我无法找到何时创建文件或目录。以下是我考虑的一些选项:使用C,我怎样知道文件何时被创建?
使用stat结构,检查最后的状态更改和数据修改时间戳是否相同。这带来了问题,您可以创建一个文件,在程序有机会检查它之前对其进行修改,这会更改数据修改时间戳并不再将其视为新文件。
保留目录中每个文件/目录的名称的日志,并检查新的目录。这有问题,您删除一个文件,然后创建一个具有相同名称的新文件,它不会被解释为新文件。
保持文件/目录数量的计数。 Similliar问题到最后的想法。
这样说,有没有人有任何想法如何我可以唯一标识创建一个文件/目录?
这取决于你的编码环境。现代操作系统通常实现一种监视目录变化的方式。 – 2011-04-10 21:48:55
不要重新发明轮子,使用操作系统特定的机制。 – crazyscot 2011-04-10 21:54:49