Need help with entr?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

clibs
479 Stars 16 Forks Other 585 Commits 4 Opened issues

Description

A utility for running arbitrary commands when files change. Uses kqueue(2) or inotify(7) to avoid polling. entr responds to file system events by executing command line arguments or by writing to a FIFO. entr was written to provide to make rapid feedback and automated testing natural and completely ordinary.

Services available

!
?

Need anything else?

Contributors list

WARNING: This is a (possibly outdated and/or unmaintained) fork of https://github.com/eradman/entr . If you want to install entr, go to the the original repository to get the latest release. Likewise, to file an issue or a pull request, head over to the the original repository.

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:

$ ls *.js | entr -r node app.js

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

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

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

$ while sleep 0.1; do ls src/*.rb | entr -d make; done

Auto-reload a web server, or terminate if the server exits

$ ls * | entr -rz ./httpd

News

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

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.