A file system monitor in Nim
Platform | Watching Directory | Watching File |
---|---|---|
Windows | ReadDirectoryChangesW |
polling using os.getLastModificationTime and os.fileExists |
Linux | inotify |
polling using inotify and os.fileExists |
Macos | TODO(fsevents ) |
polling using os.getLastModificationTime and os.fileExists |
BSD | Not implemented | TODO(kqueue ) |
import std/os
import fsnotify
proc hello(event: seq[PathEvent]) =
echo "Hello: "
echo event
var watcher = initWatcher()
register(watcher, "/root/play", hello)
while true:
sleep(500)
process(watcher)