#!/usr/bin/perl # very simple example without further modules use Linux::Inotify2; my $inotify = new Linux::Inotify2; $inotify->watch ("/etc/passwd", IN_ACCESS | IN_MODIFY, sub { my $e = shift; printf "events for <%s> received: %s\n", $e->fullname, $e->mask; print "$e->{w}{name} was accessed\n" if $e->IN_ACCESS; print "$e->{w}{name} was modified\n" if $e->IN_MODIFY; print "$e->{w}{name} is no longer mounted\n" if $e->IN_UNMOUNT; print "events for $e->{w}{name} have been lost\n" if $e->IN_Q_OVERFLOW; $e->w->cancel; }); $inotify->poll;