如何使用FSWatch观看Mac OSX上的文件更改?
我正在尝试使用fswatch从linux bash脚本中翻译以下行,以便能够在Mac OSX上运行它:
inotifywait -r -m 'myfolder/' | while read MODFILE
do
echo "something"
done
由于inotifywait不适用于Mac OSX,我想用FSWatch的第一行代替。 尽管README引用了fswatch手册页,但它并没有提供链接,并且在互联网上搜索并没有给我带来任何帮助。 所以我尝试了一下。
我创建了一个名为testfswatch/
的文件夹,并试着在父文件夹中运行以下命令,然后添加和更改testfswatch/
文件夹中的文件:
fswatch -o testfswatch/ | echo "LALA"
fswatch -o testfswatch/ | someSimpleProgram
fswatch -o testfswatch/ | xargs -n1 -I{} echo "LALA"
fswatch -o testfswatch/ | xargs -n1 -I{} ./someExecutable
fswatch -o testfswatch/ | xargs -n1 echo "LALA"
fswatch -o testfswatch/ | xargs -n1 someExecutable
// And more variations of the above
但是,当我更改或添加tesfswatch/
文件夹中的文件时,这些命令似乎都不会执行任何操作。
有人知道我在这里做错了吗? 欢迎所有提示!
与1.0和更高版本相比,fswatch的1.0之前的版本使用略微不同的调用语法。 确保您运行的是1.0以后的版本,如果您的版本比此版本旧,则可能需要升级。
正如Bushmills已经说过的那样, fswatch
语法在与fsw
合并后的v。> = 1.x中发生了变化:这个决定背后的原理是允许使用UNIX用户感觉自然的语法来监视多个路径。
此外,添加了一个特定的选项( -0
),以允许fswatch
输出到另一个程序的输入的简单且不容易出错的管道:使用-0
, fswatch
将使用NUL
(