Maison > développement back-end > Tutoriel Python > Utiliser Python pour surveiller le code des modifications du contenu du fichier

Utiliser Python pour surveiller le code des modifications du contenu du fichier

不言
Libérer: 2018-06-04 11:59:10
original
3550 Les gens l'ont consulté

Cet article présente principalement le code permettant d'utiliser Python pour surveiller les modifications du contenu des fichiers. Il a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer

Il existe deux types principaux de. surveillance des fichiers en python. Il existe deux bibliothèques, l'une est pyinotify et l'autre est watchdog. pyinotify s'appuie sur inotify sur la plate-forme Linux. Aujourd'hui, nous allons discuter de pyinotify

Utiliser la recherche pour surveiller le contenu du fichier et imprimer le contenu modifié :

#/usr/bin/env python
#-*- coding=utf-8 -*-
 
pos = 0
while True:
  con = open("a.txt")
  if pos != 0:
    con.seek(pos,0)
  while True:
  line = con.readline()
  if line.strip():
    print line.strip()
  pos = pos + len(line)
  if not line.strip():
    break
  con.close()
Copier après la connexion

<. 🎜>

Utilisez l'outil pyinotify pour surveiller les modifications du contenu du fichier. Lorsque le fichier devient progressivement plus volumineux, vous pouvez facilement terminer la tâche :

#!/usr/bin/env python
#-*- coding=utf-8 -*-
import os
import datetime
import pyinotify
import logging
 
pos = 0
def printlog():
  global pos
  try:
    fd = open("log/a.txt")
  if pos != 0:
    fd.seek(pos,0)
  while True:
    line = fd.readline()
    if line.strip():
      print line.strip()
    pos = pos + len(line)
    if not line.strip():
    break
  fd.close()
  except Exception,e:
  print str(e)
 
class MyEventHandler(pyinotify.ProcessEvent):
  def process_IN_MODIFY(self,event):
    try:
    printlog()
  except Exception,e:
    print str(e)
 
def main():
  printlog()
  wm = pyinotify.WatchManager()
  wm.add_watch("log/a.txt",pyinotify.ALL_EVENTS,rec=True)
  eh = MyEventHandler()
  notifier = pyinotify.Notifier(wm,eh)
  notifier.loop()
if __name__ == "__main__":
  main()
Copier après la connexion
Recommandations associées :

Comment utiliser le package Requests de Python pour implémenter une connexion simulée

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal