You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Eric Radman 15cf75cf96 Exit cleanly when receiving SIGHUP 2 weeks ago
missing Update notes for next release; minor formatting changes 4 months ago
.gitignore Add .gitignore 1 year ago
LICENSE Add some clarify: BSD-licensed compatibility libraries are only used on MacOS and Linux 7 years ago
Makefile.bsd Drop 'env' make target 4 months ago
Makefile.linux Use CPPFLAGS for settings that belong the C Preprocessor. Ports should be able to set CFLAGS without breaking the build 6 years ago
Makefile.macos Use CPPFLAGS for settings that belong the C Preprocessor. Ports should be able to set CFLAGS without breaking the build 6 years ago
NEWS Handle SIGHUP so child process are terminated when a terminal is closed 2 weeks ago
README.md Use relative link in README 1 month ago
configure Minor simplification of ./configure 2 years ago
data.h Fix building with GCC 10 (#20) 10 months ago
entr.1 Return the exit status of the child process when the '-z' option is used 1 month ago
entr.c Exit cleanly when receiving SIGHUP 2 weeks ago
entr_spec.c New '-z' "one-shot" option self-terminates after the utility exits 9 months ago
system_test.sh Handle SIGHUP so child process are terminated when a terminal is closed 2 weeks ago

README.md

Event Notify Test Runner

A utility for running arbitrary commands when files change. Uses kqueue(2) or inotify(7) to avoid polling. entr was written to make rapid feedback and automated testing natural and completely ordinary.

Source Installation - BSD, Mac OS, and Linux

./configure
make test
make install

To see available build options run ./configure -h

Docker and Windows Subsystem for Linux

Incomplete inotify support on WSL and Docker for Mac can cause entr to respond inconsistently. Since version 4.4, entr includes a workaround: Set the environment variable ENTR_INOTIFY_WORKAROUND.

entr will confirm the workaround is enabled:

entr: broken inotify workaround enabled

Man Page Examples

Rebuild a project if source files change, limiting output to the first 20 lines:

$ find src/ | entr sh -c 'make | head -n 20'

Launch and auto-reload a node.js server:

$ find . -name '*.js' | entr -r node app.js

Clear the screen and run a query after the SQL script is updated:

$ echo my.sql | entr -p psql -f /_

Rebuild project if a source file is modified or added to the src/ directory:

$ while true; do find src -name '*.rb' | entr -d make; done

Self-terminate after a file is updated

$ find . -type f | entr -p 'kill $PPID'

News

A release history as well as features in the upcoming release are covered in the NEWS file.