> For the complete documentation index, see [llms.txt](https://notes.eliasnorrby.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://notes.eliasnorrby.com/tools/using-entr-to-react-to-file-changes.md).

# Using entr to react to file changes

[`entr`](https://github.com/eradman/entr) is "A utility for running arbitrary commands when files change". It's available on both Linux and MacOS.

```bash
# Run make build when source files change
find . -type f -name '*.c' | entr make build
```

`/_` is a shorthand that is replaced with the absolute path of the first file to trigger an event.

```bash
# Run my_script.sh on save
echo my_script.sh | entr /_
```
