Skip to content
Monitor a directory for changes and run a shell command, using OS X's FSEvents API
Find file
Pull request Compare This branch is 1 commit ahead, 871 commits behind emcrisostomo:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.



This is a small program using the Mac OS X FSEvents API to monitor a directory.
When an event about any change to that directory is received, the specified
shell command is executed by /bin/bash.


  > ./fswatch /some/dir "echo changed" 

This would monitor /some/dir for any change, and run `echo changed` when
a modification event is received.

fswatch passes along the parent processes' environment, so you can do things
like this:

  > fswatch components/ "~/local/bin/componentize.rb components/ > resources/components.js"


You'll need the OS X Developer Tools installed on 10.5 or higher.

  > make

This code was adapted from the example program in the FSEvents API pdf.
Something went wrong with that request. Please try again.