首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用fswatch进行目录监视

使用fswatch进行目录监视
EN

Stack Overflow用户
提问于 2015-04-21 11:17:22
回答 1查看 1.1K关注 0票数 0

当视频文件被复制到目录中时,我使用fswatch监视目录并运行脚本:

代码语言:javascript
复制
fswatch -o /Path/To/Directory/Directory | xargs -n 1 sh /Path/To/Script/Script.sh

问题是,在脚本被激活之前,文件通常没有完成它的副本。这些文件是不同大小的视频文件。小文件可以,大文件不行。

如何延迟fswatch通知,直到文件完成其副本?

EN

回答 1

Stack Overflow用户

发布于 2015-04-24 20:28:11

首先,fswatch“监视器”的行为是特定于操作系统的:当询问有关fswatch的问题时,最好指定您使用的操作系统。

但是,单独使用fswatch是不可能做到这一点的。进程可能会打开一个文件以便写入,并将其打开足够长的时间,以使操作系统能够发送多个事件。恐怕fswatch对此无能为力。

另一种方法可能是使用另一个工具来检查修改后的文件当前是否打开:如果没有打开,那么运行脚本,否则跳过它,等待它的下一个事件。这些工具是特定于操作系统的:在OS和Linux中,您可以使用lsof。请注意,此方法不会保护您免受脚本运行时打开该文件的另一个进程的影响。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29770677

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档