当文件添加到目录时,如何使 bash 脚本运行?
我的 Mac 上运行着一个 bash 脚本,它使用 cURL 将文件上传到远程 Ubuntu 服务器。目前,我使用 cronjob 以 1 分钟的间隔运行该脚本,然后使用“_uploaded”标志附加上传的文件。我希望避免使用 cronjob,而只需使用一个脚本“监听”目录并仅在添加文件时上传文件。这可能吗?如果可以,我该怎么办?有更好的方法来解决这个问题吗?
I have a bash script running on my Mac that uses cURL to upload files to a remote Ubuntu server. I currently run the script on a 1 minute interval with a cronjob, and then append uploaded files with a "_uploaded" flag. I would love to avoid using the cronjob and just have a script "listen" to the directory and upload files only as they're added. Is this possible, and if so, how would I go about this? Is there a better way to go about this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
只需添加一个文件夹操作即可。右键单击 Finder 中的目录,然后将脚本与该文件夹关联。参见例如 http://www .simplehelp.net/2007/01/30/folder-actions-for-os-x-explained-with-real-world-examples/
Just add a Folder Action. Right click on the directory in the Finder then associate a script with the folder. See e.g. http://www.simplehelp.net/2007/01/30/folder-actions-for-os-x-explained-with-real-world-examples/
您可以使用 inotify 内核挂钩。 Ubuntu 服务器有包装器:inotify-tools 包
You can use inotify kernel hooks. Ubuntu server has wrapper: inotify-tools package