Software development often involves running the same commands over and over. Boring!
watchexec
is a simple, standalone tool that watches a path and runs a command whenever it detects modifications.
Example use cases:
--watch
to override)
.gitignore
to determine which files to ignore notifications forxargs
Watch all JavaScript, CSS and HTML files in the current directory and all subdirectories for changes, running make
when a change is detected:
$ watchexec --exts js,css,html make
Watch all files below src
and subdirectories for changes, running make test
when a change is detected:
$ watchexec --watch src make test
Call make test
when any file changes in this directory/subdirectory, except for everything below target
:
$ watchexec -i target make test
Call/restart python server.py
when any Python file in the current directory (and all subdirectories) changes:
$ watchexec -e py -r python server.py
Run make
when any file changes, using the .gitignore
file in the current directory to filter:
$ watchexec make
$ cargo install watchexec
$ brew install https://raw.githubusercontent.com/mattgreen/watchexec/master/pkg/brew/watchexec.rb
For now, use the GitHub Releases tab to obtain the binary. PRs for packaging in various distros are welcomed.
Use the GitHub Releases tab to obtain the binary. In the future, I'll look at adding it to Chocolatey.