问题标签 [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 回答
573 浏览

python - 使用 python-asyncio 时如何重载模块?

我正在使用pyinotify跟踪文件更改并尝试重载此修改文件所在的模块。但不幸的是,不是模块可能没有重载,我的变化是不可见的。

和模块中的代码文件aa.aa

或许还有别的办法,我需要改代码没得手动重新加载。

0 投票
1 回答
250 浏览

python - 如何将标准输出附加到文件以进行 pyinotify 守护进程?

我正在尝试使用 python pyinotify 添加手表并守护通知程序。

但是我可以发现,日志文件被覆盖而不被附加。有没有办法追加stdoutstderr?我在 Linux 操作系统上。

谢谢

0 投票
0 回答
251 浏览

python - 使用 Pyinotify 监控对符号链接的访问

我正在尝试监视对符号链接的访问,即是否使用符号链接来访问文件。使用 Pyinotify 我可以监控对文件的访问,但在通过其监视的符号链接(例如 )读取文件时我没有收到任何事件head symlink_to_file.txt

为了测试这一点,我使用了loop.py Pyinotify 中的示例并简单地替换了文件夹/tmp

通过阅读文档,我认为通过使用IN_DONT_FOLLOW,我应该获取用于访问符号链接而不是它指向的文件的事件,但是修改将手表添加到的行

不会产生任何额外的事件。

那么如何监控符号链接的访问呢?这是添加错误的地方IN_DONT_FOLLOW吗?我是否正在尝试将 inotify 接口用于它不适合做的事情?

0 投票
1 回答
267 浏览

python - Python服务 - 使用时间戳写入文件名

我编写了一个可以无限期运行的 Python 脚本。它使用模块监视目录,PyInotify并使用该Multiprocessing模块通过外部脚本运行在这些目录中创建的任何新文件。这一切都很好。

我遇到的问题是将输出写入文件。我选择的文件名使用当前日期(使用datetime.now),理论上应该每小时滚动一次。

不幸的是,当时间流逝时——输出停止并且永远不会返回。没有抛出异常,它只是停止工作。

这些文件并不是真正由 root 拥有,只是将它们更改为公共消费

如您所见,所有文件的时间戳都以 :59 结束,下一小时永远不会发生。

这样做时我应该考虑什么?是否有一些我无限期地运行 Python 脚本的东西?


偷看之后。似乎 PyInotify 是我的问题。见这里(https://unix.stackexchange.com/questions/164794/why-doesnt-inotifywatch-detect-changes-on-added-files

0 投票
1 回答
885 浏览

macos - 在 mac osx 上使用 yocto 构建 linux 时出现 Pyinotify 错误

我正在尝试在我的 Mac OSX (El Capitan) 上使用 yocto (morty) 构建一个 linux。源步骤source poky/oe-init-build-env build成功且没有错误,但是当我执行时,bitbake core-image-base我得到以下错误跟踪:

0 投票
1 回答
442 浏览

python - Python 使用 PyInotify 持久化日志文件流

我在通过pyinotify它的线程持久化日志文件写入流时遇到问题。我正在使用pyinotify监视CLOSE_WRITE文件事件的目录。在初始化之前,我pyinotify使用内置logging模块创建一个日志流,如下所示:

因此,在我的__log变量初始化后,它会立即工作,允许写入日志。我想pyinotify接下来启动实例,并希望__log使用以下类定义传递:

在上述实现中,我的process_IN_CLOSE_WRITE方法完全按照 ; 的预期触发pyinotify.AsyncNotifier。但是,logging some cool stuff从不写入日志文件的日志行。

我觉得这与通过 pyinotify 线程进程持久化文件流有关;但是,我不确定如何解决这个问题。

有任何想法吗?

0 投票
1 回答
558 浏览

python-3.x - 中断 paho mqtt 客户端以重新加载订阅

我有一个基于配置文件订阅主题的 mqtt 客户端应用程序。就像是:

我一直在使用它进行简单的调用,例如:

loop_forever永远阻塞。但我想注意阅读的信息何时clientids.allIDs()过时,我应该重新连接,强制它重新订阅。

我可以通过以下方式检测文件中的更改pyinotify

基本上,我需要loop_forever(或其他一些 paho mqtt 机制)运行,直到某些信号来自 pyinotify 机器。不过,我不确定如何将这两者焊接在一起。在伪代码中,我想要类似的东西

我不确定如何实现这一点。

0 投票
2 回答
1848 浏览

linux - 如何知道Linux中哪个进程正在更改文件

我正在使用自动化工具来构建虚拟机。在此自动化过程中,配置文件 (/etc/myprogram/cofig.ini) 将变为空。

该文件的内容是完成自动化所必需的,但我不知道哪个进程正在清空文件。

我想监视一个文件并列出更改文件内容的进程名称。

我正在使用 Ubuntu 16.04。

我在 Stackoverflow 中看到了一些问题,但确实有所帮助。我尝试使用 auditl inotify 和 watchdog 。请让我知道任何更好的方法来做到这一点。有没有办法使用 python 来做到这一点。

0 投票
1 回答
1090 浏览

python - How to monitor the changes remote directories and files?

I am trying to monitor remote directory and files. I need to store or log the changes i.e.(access, write, open and close events) of the files and directories.

I tried using pyinotify for monitoring and recording these events. I achieved it for local system files but my issue is how to monitor the remote files and directories.

Am I able to achieve this with the help of ssh or any other ways are possible to log events occur in remote files and directories?

I have given my code for local system files monitoring.

If anyone aware of remote system file monitoring, provide me your suggestions. Thanks in Advance!!!

0 投票
1 回答
235 浏览

python - 路径中文件夹名称的匹配模式,不包括匹配的路径块?

假设一个初始(Unix)路径 [segment] 像/var/log. 在此路径下,可能有一整棵目录树。用户使用 Unix shell 样式的通配符提供文件夹名称的模式,例如*var*. 遵循初始路径 [segment] 下的模式的文件夹应使用正则表达式进行匹配,将完整路径作为输入,即必须从匹配中排除初始路径段。

我将如何构建一个正则表达式来做到这一点?


我正在使用 Python,它提供fnmatch模块作为其标准库的一部分。fnmatch提供了一种translate方法,它将使用 Unix shell 样式通配符指定的模式转换为正则表达式:

我想用它来构造我的正则表达式。

匹配的输入路径可能如下所示:

  • /var/log/foo/var/bar
  • /var/log/foo/avarb/bar
  • /var/log/var/

不匹配的输入路径可能如下所示:

  • /var/日志
  • /var/log/foo/bar

根本问题是我必须将正则表达式提供给第三方模块pyinotify,作为输入。我无法通过仅剥离初始路径段然后与其余路径匹配来解决此问题...