Monitor Directory for Changes
Here’s a simple script that I setup for my development WSGI server to reload itself once changes in source code are detected:
#!/bin/bash while true; do A=`find $1 -printf '%t' | md5sum`; sleep 1 B=`find $1 -printf '%t' | md5sum`; if [ "$A" != "$B" ]; then echo "Detected change, doing: $2" eval $2 fi done
It’s very simple (a poor-man’s replacement for inotify) and doesn’t do anything complicated. Usage ./monitor.sh application "my-reload-services.sh"
. You can filter out unwanted stuff like maybe *.swp files by referring to the man find
pages.
What do you use to monitor for changes? How can the above script be improved?