Да, cpedros верен, это похоже на дубликат.Я думаю, что могу пролить немного света на это.
Каждая ОС имеет свое собственное событие изменения файла, которое запускается.В Linux это inotify (раньше был dnotify), в Mac это fsevents, а в Windows - FileSystemWatcher.Я не уверен, что базовый код обрабатывает каждый случай, но это общая идея.
Если вы просто хотите посмотреть файл в Linux, я рекомендую node-inotify-plus-plus .Если вы хотите посмотреть каталог, используйте inotify-plus-plus с node-walk .Я реализовал это, и это сработало как шарм.
Я могу опубликовать некоторый код, если вам интересно.Преимущество node-inotify-plus-plus заключается в том, что он абстрагирует большую часть мерзости inotify и предоставляет интуитивно понятный API для прослушивания определенных событий в файле.
РЕДАКТИРОВАТЬ: это не следует использовать для просмотратонны файлов.В моей системе максимальное значение составляет 8192. Ваше максимальное значение можно найти с помощью этой команды cat /proc/sys/fs/inotify/max_user_watches
.Это может быть использовано, чтобы просто посмотреть каталоги на наличие изменений, а затем выяснить отдельные файлы оттуда.Измененное событие сработает, если файл, находящийся непосредственно в этом каталоге, будет изменен.
РЕДАКТИРОВАТЬ: Спасибо @guiomie за указание на то, что просмотр файлов теперь полностью поддерживается в Windows.Я предполагаю, что это с выпуском v0.6.x.