#include<sys/inotify.h>
int inotify_init(void);//创建一个新的inotify实例,成功会返回一个文件描述符fd
int inotifyk_add_watch(int fd,const char *pathname,uint32_t mask);//追加新的的监控项,也可以修改现有监控项。pathname如果先前没有加入fd监控列表,那么创建一个新的监控项,否则进行修改。返回值为监控描述符wd
int inotify_rm_watch(int fd,uint32_t wd);//wd为inotify_add_watch()的返回值

mask的值

struct inotify_event{
int wd;
uint32_t mask;
uint32_t cookie;
uint32_t len;
char name[];
};
定义一个inotify_event结构体之后就可以用文件操作i/o那个read()函数读取inotify事件了

监控文件事件inotify的更多相关文章

  1. 基于redis ae实现 Linux中的文件系统监控机制(inotify)

    (英文部分为转的.代码是个人代码) 1 What's inotify  The inotify API provides a mechanism for monitoring file system ...

  2. Linux 监控文件事件

    某些应用程序需要对文件或者目录进行监控,来侦测其是否发生了某些事件.Linux很贴心的为我们提供了inotify API,也是Linux的专有. inotify API 在使用之前一定要有一个inot ...

  3. 烂泥:rsync与inotify集成实现数据实时同步更新

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 上篇文章我们介绍了如何使用rsync同步文件,这篇文章我们再来介绍下,如何把rsync与inotify集成实现数据的实时同步. 要达到这个目的,我们需要 ...

  4. 实时备份工具之inotify+rsync

    1.inotify简介 inotify 是一个从 2.6.13 内核开始,对 Linux 文件系统进行高效率.细粒度.异步地监控机制, 用于通知用户空间程序的文件系统变化.可利用它对用户空间进行安全. ...

  5. sersync做实时同步(第二步)

    配置文件一般都在sersync2的根目录下.为.xml文件 下面做逐行的进行解释说明: <host hostip="localhost" port="8008&qu ...

  6. Sersync实时同步

    sersync会对目录进行监控,将变化的目录或文件同步到远程服务器.sersync是递归监控的,如果有多级目录 ,都会同步到远程服务器. sersync依赖于rsync进行同步,在同步主服务器上开启s ...

  7. Linux System Programming --Chapter Seven

    文件和目录管理 一.文件与其元数据 我们首先看一下一个简单的文本文件是怎么保存的: 打开vim,编辑一段文本: [root@localhost ~]# vim hello.txt 编辑内容如下: op ...

  8. sersync自动化同步部署

    目录 0. 前提: 1. 部署rsync server服务 1.1 配置rsync配置文件 1.2 rsync配置文件说明: 1.3 创建密码文件修改权限600 1.4 创建提示文件(可有可无) 1. ...

  9. PHP-X介绍

      为什么要开发PHP扩展 PHP-X是用来开发PHP扩展的库.PHP代码写得好好的,为啥要开发PHP扩展呢? 1.我们知道PHP不擅长CPU密集型的操作,那么把CPU密集型的相关代码迁移到扩展上,就 ...

随机推荐

  1. day32 信号量 事件 管道 进程池

    今日主要内容: 1.管道(Pipe) 数据接收一次就没有了 2.事件(Event) 3.基于事件的进程通信 4.信号量(Semaphore) 5. 进程池(重点) 6.进程池的同步方法和异步方法 7. ...

  2. caffe,Inception v2 Check failed: top_shape[j] == bottom[i]->shape(j)

    使用Caffe 跑 Google 的Inception V2 对输入图片的shape有要求,某些shape输进去可能会报错. Inception model中有从conv和pooling层concat ...

  3. list的四种遍历方式

    1.手先增强for循环和iterator遍历的效果是一样的,也就说 增强for循环的内部也就是调用iteratoer实现的,但是增强for循环 有些缺点,例如不能在增强循环里动态的删除集合内容.不能获 ...

  4. ubuntu查看占用某端口的程序

    查看端口使用情况,使用netstat命令. 查看已经连接的服务端口(ESTABLISHED netstat -a 查看所有的服务端口(LISTEN,ESTABLISHED) netstat -ap 查 ...

  5. Java 利用poi生成excel表格

    所需jar包,如下所示 写一个excel工具类 ExcelUtils .java import java.lang.reflect.Field; import java.util.Iterator; ...

  6. CountDownLatch在多线程程序中的应用

    一.CountDownLatch介绍 CountDownLatch是JDK1.5之后引入的,存在于java.util.concurrent包下,能够使一个线程等待其他线程完成动作后再执行.构造方法: ...

  7. jquery.datatables设置列隐藏的方法

    项目需要根据权限设置表格(使用Juqery.datatables,版本:1.10.16)某列显示或隐藏,百度后有两种实现方法: 1.在columns中设置: columns:[{data:" ...

  8. python里面如何拷贝一个对象,deecopy和copy的区别

    copy仅拷贝对象的本身,而不拷贝对象引用的其它对象. deecopy除拷贝对象本身,而拷贝对象引用的其它对象.

  9. python 正则匹配时间格式转换方法

    import re from datetime import datetime a = '2018年8月9日 10:10' s = re.findall('\d+',a) print(s) d = ' ...

  10. Pandas分组统计函数:groupby、pivot_table及crosstab

    利用python的pandas库进行数据分组分析十分便捷,其中应用最多的方法包括:groupby.pivot_table及crosstab,以下分别进行介绍. 0.样例数据 df = DataFram ...