I would suggest that you write a daemon that uses the FAM (file access monitor) Module CPAN) and when it sees a change it calls the script.
I do have to preface this with the fact that I did try to use the FAM module early on in my learning of perl and was unsuccessful in getting it to work, but I believe that that was probably a symptom of my newbie-ness and not the ability of the module to do the job!