inotify-tools/inotify-tools
Freeinotify-tools is a C library and a set of command-line programs providing a simple interface to inotify.
FreeFree tier
About inotify-tools/inotify-tools
inotify-tools is a C library and a set of command-line programs providing a simple interface to inotify. Its general purpose is to allow inotify's features to be used from within shell scripts. The package includes utilities such as inotifywait and inotifywatch for monitoring filesystem events. A Rust implementation is available and recommended for future development over the C/C++ version. The project is open source under GPL-2.0 and actively maintained with recent releases.
Key Features
C library providing a simple interface to Linux inotify
Command-line utilities: inotifywait and inotifywatch
Enables filesystem event monitoring (create, modify, delete) from shell scripts
Supports recursive directory monitoring (inotifywait -r)
Open source under GPL-2.0 license
Active development with Rust implementation recommended for future enhancements
Includes detailed man pages for each utility
Pros & Cons
Pros
- Free and open source
- Simple API accessible from shell scripts
- Lightweight utilities with minimal dependencies
- Active maintenance with regular releases
- Well-documented with man pages
- Rust variant available for improved safety and performance
Cons
- Linux-only (requires kernel support for inotify)
- May have performance limitations when monitoring deeply nested directory trees
- C/C++ codebase considered legacy — enhancements recommended in Rust
- No graphical user interface
Best For
Triggering scripts or commands when files are created, modified, or deletedAutomating backup or sync workflows on file changesReal-time log file monitoringBuilding custom file watchers for development toolsIntegrating filesystem event handling into shell-based CI/CD pipelines
FAQ
What is inotify-tools?
inotify-tools is a C library and set of command-line programs providing a simple interface to Linux inotify, allowing its features to be used from within shell scripts.
Which utilities are included?
The package includes inotifywait (to wait for file events) and inotifywatch (to gather filesystem access statistics).
Is there a Rust version?
Yes, a Rust implementation of inotify-tools is available and recommended for future enhancements over the C/C++ version.
What license is used?
inotify-tools is licensed under GPL-2.0.
Is inotify-tools cross-platform?
No, it is Linux-only because it relies on the inotify kernel subsystem, which is available only on Linux.