Oli*_*Oli 6 command-line scripts inotify
所以我正在做一个简单的inotifywait循环来观察 Bootstrap 目录中的变化:
while inotifywait -r -q --format %w bootstrap/; do
echo "something happened"
[[ $filename == *.js ]] && uglifyjs .....
[[ $filename == *.less ]] && lessc bootstrap.less
done
Run Code Online (Sandbox Code Playgroud)
您真的不需要担心内部结构,但我无法将文件名恢复到 bash 范围内。inotifywait回显文件名(在格式参数的帮助下)但是我如何捕获它并在以后使用它(在我的情况下, as $filename)?
如果您想要一个简单、简短的测试工具:
touch testfile
while inotifywait testfile do; echo "..."; done
Run Code Online (Sandbox Code Playgroud)
然后你可以touch testfile在你想触发它时运行。
abe*_*ier 21
此博客条目说明了更清洁的方法:
inotifywait -m -r -q --format '%w' bootstrap/ | while read FILE
do
echo "something happened on path $FILE"
done
Run Code Online (Sandbox Code Playgroud)