问题标签 [pyinotify]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1036 浏览

python - 烧瓶“hello world”无法在调试模型中运行

我按照官方文档,安装了virtualenv和flask,然后python hello.py 出现了问题:</p>

我的hello.py:

但是如果没有调试就可以了吗?为什么?我的 /env/lib/python2.7/site-packages:

0 投票
1 回答
1801 浏览

python - pyinotify 的可疑线程问题

我一直在使用 pyinotify 并且遇到了问题,在对文件夹进行多次更改后,它只是停止接收通知。我感觉这与两个线程正在运行的事实有关;即通知线程和 wxpython 线程。

该应用程序的目的本质上是在检测到 IP 连接时将图片加载到屏幕上,监视文件夹中的文件“清单”并基于该文件进行一些处理,即移动文件。

它间歇性地工作,但作为一个 python 新手,我不确定问题可能是什么,因为我基本上已经采用了线程示例并解决了它。有时,它只收到一个通知并停止接收文件更改通知。

此外,如果我重新启动 linux 机器并重试,它适用于大量文件更改,然后再次停止接收通知,这让我认为它可能没有正确释放手表?

任何帮助将不胜感激,并且非常欢迎优化和改进。我相信我可以从反馈中学到很多东西。代码如下

0 投票
2 回答
283 浏览

filesystems - 内核如何知道文件已关闭

linux知道文件已关闭的机制到底是什么?我知道诸如 INOTIFY 之类的命令会在文件关闭时触发 IN_CLOSE_WRITE 事件。但它是如何工作的?什么触发关闭文件?

同样,操作系统如何知道文件已打开以及它在哪里注册该事实?

0 投票
0 回答
440 浏览

python - 获取线程实例调用事件的名称

我只是想知道如何获取pyinotify.ThreadedNotifier调用我的 EventHandler 的名称。

pyinotify.ThreadedNotifier自动获取名称,如“Thread-1”、“Thread-2”等。

我可以使用该getName()函数获取通知程序的名称,但我不知道如何找出其中哪些调用了 my EventHandler().

有没有办法找出来?

0 投票
3 回答
1199 浏览

python - most performatic free database for file system tracking

I'm tracking a linux filesystem (that could be any type) with pyinotify module for python (which is actually the linux kernel behind doing the job). Many directories/folders/files (as much as the user want to) are being tracked with my application and now i would like track the md5sum of each file and store them on a database (includes every moving, renaming, new files, etc).

I guess that a database should be the best option to store all the md5sum of each file... But what should be the best database for that? Certainly a very performatic one. I'm looking for a free one, because the application is gonna be GPL.

0 投票
1 回答
1056 浏览

python - pyinotify 中断 check_events

我知道pyinotify.Notifier.check_events(self, timeout=None)可以暂停 - 但我更希望它无限期地轮询。有可能中断吗?

我在打电话Notifier.stop(self),但它似乎没有逃脱check_events

在下面的示例中,另一个线程调用stopIt(), 并被self.notifier.stop()调用 - 但既没有打印“check_events is True”也没有打印“check_events is False”:

0 投票
1 回答
828 浏览

python - 使用 pyinotify 在目录中创建假脱机的最佳方法是什么?

我试图在创建目录时将目录中的每个文件移动到另一个文件。也许我可以干净地停止守护进程(pyinotify 实例运行),并继续在 orig/spool 目录中创建原始文件。

我想在守护进程再次启动后进行处理。也许我可以利用 inotify 内核队列?

提前致谢

0 投票
2 回答
697 浏览

python - Python,Ubuntu:Dropbox 完成同步后引发事件?

我正在编写一个脚本,以便在完成同步后将文件从 Dropbox 中的某个文件夹中移出。

例如,我想要一个名为“TrashBackup”的文件夹,只要我把东西放在那里,(在完成同步之后)我的服务器就会将它从 Dropbox 中取出并移到文件系统中的另一个位置(最终删除它从我的笔记本电脑)。

我正在使用 pyinotify 但问题是我不知道如何知道它何时完成同步。我可能最终会在一个可能非常大的文件没有完成传输之前移动。

我正在考虑设置一个计时器来查看文件最后一次更改的时间,如果超过 20 分钟,则继续将其移出 Dropbox。但这似乎是一种变通办法。此外,如果我正在传输 1GB 的文件,我可能会根据 Dropbox 的速度和我的本地带宽利用率来推动我的运气。

也许我应该开始监控 .dropbox.cache 文件夹?有任何想法吗?

0 投票
2 回答
532 浏览

ftp - APPE FTP命令传输完成检测服务器端

我有一个通过 FTP 处理传入文件的服务。

在我安装 Proftpd 的 Debian 服务器上,我使用 iNotify 事件来确定文件传输何时完成并且我可以开始使用它。

一旦不再写入文件,就会触发该事件。

在我发现新的尼康 D4 相机和 WT-5 无线发射器使用 APPE FTP 命令发送文件之前,这种方法非常有效。

从我读到的内容看来,APPE FTP 命令以数据块的形式发送文件,这些文件在第一个块创建文件后附加到服务器上的现有文件中。

然而,这会导致多个 iNotify 事件被触发,因为文件被多次而不是一次写入,直到连接关闭。

由于文件是在文件完成之前处理的,因此一旦处理就会导致错误。而且我总是在处理后删除文件。

由于我的这项服务在处理传入文件时必须保持快速,我真的很喜欢这个带有 iNotify 的解决方案,并且真的不想计时文件大小是否保持不变 n 秒或确定文件传输是否完成。

我的问题是:有什么方法可以确定文件传输是否实际完成,而无需检查文件大小或比较上次修改日期?

我试图在 proftpd 中找到一种方法,但无济于事。

xferlog 指出同一个文件已完成多次:

最后的 c 表示传输完成。

因此,如果我必须检查每个传入文件的文件是否实际完成,这意味着实际完成的文件会出现不必要的延迟。

似乎这不应该是一个不寻常的问题,但找不到任何关于它的东西。

有任何想法吗?

0 投票
1 回答
207 浏览

python - pyinotify 代码清理 smtplib

新编码器在这里

我希望能够稍微清理一下这段代码。我希望能够将 smtplib 的内容移出课堂,但我仍然需要它来发送包含 pinotify 数据的电子邮件如果您查看我的代码,您会看到。这是非常多余的。

如果通知数据 > 发送包含文件创建数据的电子邮件

如果通知数据 > 发送包含文件已删除数据的电子邮件

我该如何巩固这一点。