Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在C中监控文件系统的跨平台API?_C_Filesystems_Cross Platform_Watch - Fatal编程技术网

在C中监控文件系统的跨平台API?

在C中监控文件系统的跨平台API?,c,filesystems,cross-platform,watch,C,Filesystems,Cross Platform,Watch,我正在寻找一个跨平台库来检测目录中的文件何时被添加或修改。 我知道有特定于操作系统的方法可以做到这一点(Linux的inotify、windows的FindFirstChangeNotification等等) 但是是否有一个独立于平台的库专门用于C?(就像C++中的QFileSystemWatcher一样)inotify是Linux特有的,如果您想要一些UNIX可移植的功能,您可能正在寻找类似于libfam的功能。这是图书馆的名字。已更改包的完整名称 FileChanged是一个GNU/Linu

我正在寻找一个跨平台库来检测目录中的文件何时被添加或修改。
我知道有特定于操作系统的方法可以做到这一点(Linux的inotify、windows的FindFirstChangeNotification等等)


但是是否有一个独立于平台的库专门用于C?(就像C++中的QFileSystemWatcher一样)

inotify是Linux特有的,如果您想要一些UNIX可移植的功能,您可能正在寻找类似于
libfam
的功能。这是图书馆的名字。已更改包的完整名称


FileChanged是一个GNU/Linux命令行实用程序,用于报告文件被更改的时间

听起来像是golang的一个很好的用例。 只需更改$GOOS和/或$GOARCH并运行
go build

繁荣-琐碎的跨平台开发。

现在是2021年,也许这是你的爱好

根据描述:

用于监视目录更改的单头C99便携库


。。。或者更强壮?

酷!我不知道那个图书馆。但我特别搜索的是,适用于Windows和Linux的API对于Windows、Linux、Mac OS X和任何其他您可以命名的Unix都是完全不同的。我不知道有哪个跨平台库以一致的方式处理这个问题。问题是关于C,而不是GO。如果使用C是一个任意的自我约束,GO是一个合理的考虑因素。