| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
jopen
11年前发布

Python监控Windows下的文件变化

windows下监控文件系统的变化,用python很方便。

相关参考链接:

http://docs.activestate.com/activepython/2.4/pywin32/win32file__ReadDirectoryChangesW_meth.html

http://docs.activestate.com/activepython/2.5/pywin32/win32file__CreateFile_meth.html
    import os        import win32file                import win32con                        ACTIONS = {          1 : "Created",          2 : "Deleted",          3 : "Updated",          4 : "Renamed from something",          5 : "Renamed to something"        }                FILE_LIST_DIRECTORY = win32con.GENERIC_READ | win32con.GENERIC_WRITE        path_to_watch = "."        hDir = win32file.CreateFile (          path_to_watch,          FILE_LIST_DIRECTORY,          win32con.FILE_SHARE_READ | win32con.FILE_SHARE_WRITE,          None,          win32con.OPEN_EXISTING,          win32con.FILE_FLAG_BACKUP_SEMANTICS,          None        )                if __name__ == '__main__':            print("123")            while 1:                print("321")                results = win32file.ReadDirectoryChangesW (                                                       hDir,  #handle: Handle to the directory to be monitored. This directory must be opened with the FILE_LIST_DIRECTORY access right.                                                       1024,  #size: Size of the buffer to allocate for the results.                                                       True,  #bWatchSubtree: Specifies whether the ReadDirectoryChangesW function will monitor the directory or the directory tree.                                                        win32con.FILE_NOTIFY_CHANGE_FILE_NAME |                                                        win32con.FILE_NOTIFY_CHANGE_DIR_NAME |                                                        win32con.FILE_NOTIFY_CHANGE_ATTRIBUTES |                                                        win32con.FILE_NOTIFY_CHANGE_SIZE |                                                        win32con.FILE_NOTIFY_CHANGE_LAST_WRITE |                                                        win32con.FILE_NOTIFY_CHANGE_SECURITY,                                                       None,                                                       None)                for action, file in results:                    full_filename = os.path.join (path_to_watch, file)                    print (full_filename, ACTIONS.get (action, "Unknown"))  

 本文由用户 jopen 自行上传分享,仅供网友学习交流。所有权归原作者,若您的权利被侵害,请联系管理员。
 转载本站原创文章,请注明出处,并保留原始链接、图片水印。
 本站是一个以用户分享为主的开源技术平台,欢迎各类分享!
 本文地址:https://www.open-open.com/lib/view/open1413010255592.html
Python Python开发