In diesem Artikel wird hauptsächlich der Code für die Überwachung von Dateiinhaltsänderungen vorgestellt. Jetzt kann ich ihn mit Ihnen teilen.
Es gibt zwei Haupttypen der Dateiüberwachung in Python gibt es zwei Bibliotheken, eine ist Pinotify und die andere ist Watchdog. pyinotify setzt auf inotify auf der Linux-Plattform. Heute werden wir pyinotify besprechen.
Verwenden Sie see, um den Dateiinhalt zu überwachen und den geänderten Inhalt auszudrucken:
#/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()
Verwenden Sie das Tool pyinotify, um Änderungen am Dateiinhalt zu überwachen. Wenn die Datei allmählich größer wird, können Sie die Aufgabe problemlos erledigen:
#!/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()
Verwandte Empfehlungen:
So verwenden Sie das Requests-Paket von Python, um eine simulierte Anmeldung zu implementieren
Das obige ist der detaillierte Inhalt vonVerwenden Sie Python, um den Code für Dateiinhaltsänderungen zu überwachen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!