python怎么实现文件跟踪?
问题说的可能不够严谨。比如使用git,在一个仓库内,git会判断出哪个文件做过修改,哪些已经加到缓冲区。类似的功能如果用python怎么实现?我的想法是给文件加一个标记(或者一个属性,有没有这种说法?),或者建立一个临时文件来做记录。
这块知识对于我属于真空...以上说法或想法只是我自己想得。希望大家能给点思路或者实现方法。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
监视文件变动,可以使用跨平台的 watchdog 模块,不过可能不支持 Python 3。
在 Linux 平台可以使用 pyinotify 模块。
一个简单的办法是每隔几秒检查一下文件的
mtime
(最后修改时间)(Tornado 使用此法),不过比较耗资源。PS: 这些都和 git 不一样。git 有自己的数据库,里边存储了文件的上一个版本。你
git status
时它会把当前工作区的文件和它已经储存的版本进行比对。PPS: 所以你的需求还没说清楚。
可以参考 django 或 flask 的 debug 模式,这些都会自动检测文件变动,然后重启开发服务器。不过具体我也没研究过它们的实现方式,你可以看看它们的源码