我有一个bash脚本,我想在每次更改文件系统时触发一个方法:
#!/bin/bash
function run {
echo Do some magic
// Do some magic
}
run
fswatch . src | 'run'
在这种情况下,我正在观看src
文件夹。
当我通过
触发脚本时./automater.sh
脚本第一次正确执行run
函数,然后当我更改某个文件时,脚本会退出...
答案 0 :(得分:1)
BUT then it runs in a loop....
,我也点击了这个,因为在./automater.sh
执行后,你的目录中有一些新的文件更改,你可以使用exclude选项来忽略这些文件,在我的情况下如下: / p>
fswatch -l 5 -o -e ".*" -i "\\.py$" . | while read; \
do \
unittest || true
done
|| true
,似乎需要让你的命令在shell脚本中使用时返回true,我用这个技巧来解决only first time correctly
问题此外,您可以运行fswatch . src
并运行'运行'命令在单独的终端窗口中查找新更改的内容。