名称: entr
描述: 当文件发生变化时运行任意命令。适用于监视文件并触发构建或测试。
一个在文件变化时运行任意命令的实用工具。
entr 从标准输入接收一个文件名列表,并执行第一个参数指定的命令。
<文件列表命令> | entr <命令> [参数]
-c: 调用命令前清屏。-r: 重新加载一个持久的子进程(例如,服务器)。-s: 使用 SHELL 环境变量指定的解释器来执行第一个参数。当源代码变化时重新构建项目:
find src/ -name "*.c" | entr make
当 JS 文件变化时运行测试:
git ls-files | grep '\.js$' | entr npm test
自动重载 Node 服务器:
ls *.js | entr -r node app.js
entr 会阻塞终端。在作为后台代理使用时:
1. 如果需要同时进行其他操作,可使用 process 工具将其置于后台运行。
2. 或者,在需要持续监控输出时,将其用于临时的“监视模式”会话。