Questions tagged «inotify»


14
在Mac上是否有“ watch”或“ inotifywait”之类的命令?
我想在Mac(雪豹)上观看一个文件夹,然后执行一个脚本(为它提供刚移入文件夹的文件名(作为参数... x.sh“文件名”))。 我有一个全部用bash(x.sh)编写的脚本,它将在输入$ 1上移动一些文件和其他内容。当新文件/文件夹移动/创建到目录中时,我只需要OSX给我文件名。 有这样的命令吗?
287 macos  watch  inotify 


8
如何在Linux中监视整个目录树的更改?
如何在Linux(ext3文件系统)中监视整个目录树的更改? 当前,该目录在大约3,000个子目录中包含大约一百万个文件,并按三个目录级别进行组织。 这些文件大多是小文件(<1kb,有些则最大为100 kb)。这是一种队列,我需要知道在发生这种情况的5-10秒内何时创建,删除文件或修改其内容。 我知道这里有inotify和sorting,但是AFAIK它们只监视一个目录,这意味着我需要3,000个inotify句柄-比单个进程允许的通常1024个句柄还要多。还是我错了? 万一Linux系统不能告诉我我需要什么:也许有一个FUSE项目可以模拟一个文件系统(在真实文件系统上复制所有文件访问权限)并分别记录所有修改(不能进行修改)吗?


5
缺少inotify事件(在.git目录中)
我正在使用inotify事件(恰好发生在Python中,调用libc)来监视文件中的更改。 对于a期间的某些文件git clone,我看到了一些奇怪的事情:我看到一个IN_CREATE事件,并且通过ls它看到该文件包含内容,但是,我从未看到IN_MODIFY或IN_CLOSE_WRITE。因为我要IN_CLOSE_WRITE对文件做出响应,这导致了我的问题:具体来说,是启动文件内容的上载。 行为异常的文件位于.git/objects/pack目录中,并以.pack或结尾.idx。git创建的其他文件具有更规则的IN_CREATE-> IN_MODIFY-> IN_CLOSE_WRITE链(我不在监视IN_OPEN事件)。 这是在MacOS上的docker内部,但是我已经看到在远程系统上的Linux上的docker上有相同的证据,因此我怀疑MacOS方面是不相关的。如果正在观看并且git clone在同一个 Docker容器中,我会看到这个。 我的问题: 为什么这些文件上缺少这些事件? 该怎么办?具体来说,我该如何回应对这些文件的写入完成?注意:理想情况下,我想在“完成”书写时做出响应,以避免不必要地/(不正确地)上传“未完成”的书写。 编辑:阅读https://developer.ibm.com/tutorials/l-inotify/看来我所看到的与 一个单独的临时文件,其名称如tmp_pack_hBV4Alz,正在创建,修改和关闭; 将以最终名称创建到该文件的硬链接.pack; 原始tmp_pack_hBV4Alz名称被删除。 我认为我的问题是尝试使用inotify作为上载文件的触发器,然后简化为注意到该.pack文件是与另一个文件的硬链接,并且在这种情况下上载?
11 linux  git  docker  libc  inotify 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.