Python pyinotify模块实现对文档的实时监控功能方法


Posted in Python onOctober 13, 2018

0x01 安装pyinotify

>>> pip install pyinotify
>>> import pyinotify

0x02 实现对文档的试试监控功能

这个功能类似与Ubuntu里的rail -f功能,在对目标文件进行修改时,脚本可以实时监控并将新的修改打印出来。

import pyinotify
import time
import os

class ProcessTransientFile(pyinotify.ProcessEvent):
  def process_IN_MODIFY(self, event):
    line = file.readline()
    if line:
      print line, # already has newline

filename = './test.txt'
file = open(filename,'r')
#Find the size of the file and move to the end
st_results = os.stat(filename)
st_size = st_results[6]
file.seek(st_size)

wm = pyinotify.WatchManager()
notifier = pyinotify.Notifier(wm)
wm.watch_transient_file(filename, pyinotify.IN_MODIFY, ProcessTransientFile)

notifier.loop()

以上这篇Python pyinotify模块实现对文档的实时监控功能方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
详解Python函数作用域的LEGB顺序
May 14 Python
python数字图像处理之高级形态学处理
Apr 27 Python
Python 内置函数进制转换的用法(十进制转二进制、八进制、十六进制)
Apr 30 Python
PYTHON基础-时间日期处理小结
May 05 Python
完美解决安装完tensorflow后pip无法使用的问题
Jun 11 Python
使用Flask集成bootstrap的方法
Jul 24 Python
python3.6 tkinter实现屏保小程序
Jul 30 Python
python计算导数并绘图的实例
Feb 29 Python
django模型动态修改参数,增加 filter 字段的方式
Mar 16 Python
关于win10在tensorflow的安装及在pycharm中运行步骤详解
Mar 16 Python
Python中格式化字符串的四种实现
May 26 Python
python中os.path.join()函数实例用法
May 26 Python
基于pycharm导入模块显示不存在的解决方法
Oct 13 #Python
解决PyCharm import torch包失败的问题
Oct 13 #Python
python3+requests接口自动化session操作方法
Oct 13 #Python
解决pycharm无法识别本地site-packages的问题
Oct 13 #Python
解决PyCharm同目录下导入模块会报错的问题
Oct 13 #Python
python中单例常用的几种实现方法总结
Oct 13 #Python
python中pika模块问题的深入探究
Oct 13 #Python
You might like
php基于闭包实现函数的自调用(递归)实例分析
2016/11/11 PHP
PHP实现用户异地登录提醒功能的方法【基于thinkPHP框架】
2018/03/15 PHP
理解Javascript_08_函数对象
2010/10/15 Javascript
js 判断脚本加载完毕的代码
2011/07/13 Javascript
dojo学习第二天 ajax异步请求之绑定列表
2011/08/29 Javascript
纯js网页画板(Graphics)类简介及实现代码
2012/12/24 Javascript
让html页面不缓存js的实现方法
2014/10/31 Javascript
angularJS结合canvas画图例子
2015/02/09 Javascript
AngularJS基础学习笔记之控制器
2015/05/10 Javascript
微信小程序开发经验总结(推荐)
2017/01/11 Javascript
详解ECMAScript6入门--Class对象
2017/04/27 Javascript
JavaScript简介_动力节点Java学院整理
2017/06/26 Javascript
CheckBox多选取值及判断CheckBox选中是否为空的实例
2017/10/31 Javascript
vue实现模态框的通用写法推荐
2018/02/26 Javascript
Node.JS获取GET,POST数据之queryString模块使用方法详解
2020/02/06 Javascript
js屏蔽F12审查元素,禁止修改页面代码等实现代码
2020/10/02 Javascript
[03:40]2014DOTA2国际邀请赛 B神专访:躲箭真的很难
2014/07/13 DOTA
Python中atexit模块的基本使用示例
2015/07/08 Python
python实现批量按比例缩放图片效果
2018/03/30 Python
Python输入二维数组方法
2018/04/13 Python
基于numpy中数组元素的切片复制方法
2018/11/15 Python
numpy中的ndarray方法和属性详解
2019/05/27 Python
python实现两个dict合并与计算操作示例
2019/07/01 Python
python 实现人和电脑猜拳的示例代码
2020/03/02 Python
简单介绍一下pyinstaller打包以及安全性的实现
2020/06/02 Python
HTML5注册页面示例代码
2014/03/27 HTML / CSS
EJB包括(SessionBean,EntityBean)说出他们的生命周期,及如何管理事务的?
2013/02/17 面试题
市场营销大学生职业规划书
2014/02/25 职场文书
法定代表人授权委托书范本
2014/10/07 职场文书
幼儿园2014年度工作总结
2014/11/10 职场文书
新员工试用期自我评价
2015/03/10 职场文书
2015年社区计生工作总结
2015/04/21 职场文书
工会经费申请报告
2015/05/15 职场文书
基于Redis延迟队列的实现代码
2021/05/13 Redis
pandas取dataframe特定行列的实现方法
2021/05/24 Python
python模拟浏览器 使用selenium进入好友QQ空间并留言
2022/04/12 Python