温馨提示×

Ubuntu inotify如何检测文件修改操作

小樊
31
2025-12-10 18:08:51
栏目: 智能运维

在Ubuntu中,inotify是一个Linux内核子系统,它可以实时监控文件系统事件,如文件的创建、修改、删除等

以下是一个简单的Python示例,使用inotify库来检测文件修改操作:

首先,确保已经安装了inotify库。如果没有,请运行以下命令安装:

pip install inotify

然后,创建一个名为inotify_example.py的Python脚本,并添加以下代码:

import os
from inotify_simple import INotify, flags

# 创建一个INotify实例
inotify = INotify()

# 监控的文件或目录路径
file_path = "test.txt"

# 添加监控规则
watch_flags = flags.MODIFY
wd = inotify.add_watch(file_path, watch_flags)

try:
    while True:
        # 读取事件
        for event in inotify.read():
            if event.mask & flags.MODIFY:
                print(f"文件 {event.name} 被修改")
except KeyboardInterrupt:
    # 移除监控规则并退出循环
    inotify.rm_watch(wd)
    print("监控已停止")

在这个示例中,我们监控名为test.txt的文件。当文件被修改时,程序会输出相应的提示信息。

运行脚本:

python inotify_example.py

现在,当你修改test.txt文件时,程序会实时检测到修改操作并输出提示信息。

注意:这个示例仅适用于Python。如果你需要在其他编程语言中实现类似的功能,请查阅相应语言的inotify库文档。

0