2016-12-06 15 views
4

Я ищу библиотеку кросс-платформенного, чтобы обнаружить, когда файлы в каталоге добавлены или изменены.
Я знаю, что существует специальный способ OS для этого (inotify для Linux, FindFirstChangeNotification для окон и т. Д.).Кросс-платформенный API для мониторинга файловой системы в C?

Но есть ли независимая от платформы библиотека, которая работает специально в C? (Как QFileSystemWatcher в C++)

ответ

1

inotify - это конкретный Linux, если вы хотите использовать некоторые портативные функции UNIX, которые вы ищете примерно как libfam. это имя библиотеки. Полное имя пакета - файлы.

fileschanged - утилита командной строки GNU/Linux, которая сообщает, что файлы были изменены.

+0

Прохладный! Я не знал эту библиотеку. Но то, что я ищу, - это то, что будет работать для Windows и для Linux. – cydan

+0

API-интерфейсы полностью разные для Windows, Linux, Mac OS X и любых других Unix, которые вы можете назвать. Я не знаю никакой кросс-платформенной библиотеки, которая будет обрабатывать это последовательно. –

-3

Звучит как хороший вариант использования для golang. Просто измените $ GOOS и/или $ GOARCH и запустите go build.

Бум - тривиальная кросс-платформенная разработка.

+0

Вопрос спрашивает о C, а не GO. – john01dav

+0

И если использование C является произвольным самоналоженным ограничением, Go является разумным соображением. –