entr
entr permet d'exécuter des commandes lorsque des changements au système de fichiers sont détectés.
Personnellement, je l'utilise beaucoup pour concaténer et compresser à la volée les fichiers CSS ou JavaScript:
find . -type f -name "*.css" | entr -c -d ./css.sh
Ou tout reconstruire si un changement est détecté dans les fichiers d'un projet:
ag -l | entr make