import "golang.org/x/exp/inotify"
        
Package inotify implements a wrapper for the Linux inotify system.
Example:
watcher, err := inotify.NewWatcher()
if err != nil {
    log.Fatal(err)
}
err = watcher.Watch("/tmp")
if err != nil {
    log.Fatal(err)
}
for {
    select {
    case ev := <-watcher.Event:
        log.Println("event:", ev)
    case err := <-watcher.Error:
        log.Println("error:", err)
    }
}
        
  
        
        const (
    // Options for AddWatch
    IN_DONT_FOLLOW uint32 = syscall.IN_DONT_FOLLOW
    IN_ONESHOT     uint32 = syscall.IN_ONESHOT
    IN_ONLYDIR     uint32 = syscall.IN_ONLYDIR
    // Events
    IN_ACCESS        uint32 = syscall.IN_ACCESS
    IN_ALL_EVENTS    uint32 = syscall.IN_ALL_EVENTS
    IN_ATTRIB        uint32 = syscall.IN_ATTRIB
    IN_CLOSE         uint32 = syscall.IN_CLOSE
    IN_CLOSE_NOWRITE uint32 = syscall.IN_CLOSE_NOWRITE
    IN_CLOSE_WRITE   uint32 = syscall.IN_CLOSE_WRITE
    IN_CREATE        uint32 = syscall.IN_CREATE
    IN_DELETE        uint32 = syscall.IN_DELETE
    IN_DELETE_SELF   uint32 = syscall.IN_DELETE_SELF
    IN_MODIFY        uint32 = syscall.IN_MODIFY
    IN_MOVE          uint32 = syscall.IN_MOVE
    IN_MOVED_FROM    uint32 = syscall.IN_MOVED_FROM
    IN_MOVED_TO      uint32 = syscall.IN_MOVED_TO
    IN_MOVE_SELF     uint32 = syscall.IN_MOVE_SELF
    IN_OPEN          uint32 = syscall.IN_OPEN
    // Special events
    IN_ISDIR      uint32 = syscall.IN_ISDIR
    IN_IGNORED    uint32 = syscall.IN_IGNORED
    IN_Q_OVERFLOW uint32 = syscall.IN_Q_OVERFLOW
    IN_UNMOUNT    uint32 = syscall.IN_UNMOUNT
)type Event struct {
    Mask   uint32 // Mask of events
    Cookie uint32 // Unique cookie associating related events (for rename(2))
    Name   string // File name (optional)
}String formats the event e in the form "filename: 0xEventMask = IN_ACCESS|IN_ATTRIB_|..."
type Watcher struct {
    Error chan error  // Errors are sent on this channel
    Event chan *Event // Events are returned on this channel
    // contains filtered or unexported fields
}NewWatcher creates and returns a new inotify instance using inotify_init(2)
AddWatch adds path to the watched file set. The flags are interpreted as described in inotify_add_watch(2).
Close closes an inotify watcher instance It sends a message to the reader goroutine to quit and removes all watches associated with the inotify instance
RemoveWatch removes path from the watched file set.
Watch adds path to the watched file set, watching all events.
Package inotify imports 7 packages (graph) and is imported by 21 packages. Updated a day ago. Refresh now. Tools for package owners.