command
Version:
v0.0.0-...-e50eabf
Opens a new window with list of versions in this module.
Published: Apr 1, 2022
License: MIT
Opens a new window with license information.
Imports: 16
Opens a new window with list of imports.
Imported by: 0
Opens a new window with list of known importers.
README
¶
##文件监控工具
参考了网上很多的代码,学着用golang写的一个简单的文件监控工具,比较简单,使用的fsnotify,主要的功能:
1、监控指定文件夹下,文件的变动,例如:新建文件、文件更改、文件删除以及文件重命名;
2、记录文件的MD5值,并输出到 .csv 文件中;
3、记录文件变动历史;
4、每隔1分钟,发送邮件通知(如果有文件变动);
要监控的文件夹路径需要自己去代码改动,等以后有空写成配置的形式,暂时先这样。
因为fsnotify不会去监听文件夹下的子文件夹(不知道是不是我不会设置),所用我用了比较搓的办法,给每个文件夹一个watcher,当新建子文件夹时,分配一个watcher给子文件夹。
windows和linux下有点小区别:
- 在windows下,新建一个文件夹后,再重命名文件夹,然后在该文件夹下创建新的文件,fsnotify只会通知重命名之前的文件路径;
例如:在 D:/ 创建一个新的文件夹,文件夹名叫【新建文件夹】,然后重命名为 【test】,进入D:/test/ 目录,创建新的文件 hello.txt,此时fsnotify触发的event.Name 还是 D:/新建文件夹/hello.txt, 而真正的路径却不会重新触发事件,即时在 watcher中Add重命名后的路径,也不会再触发事件,所以我这里给每个文件夹路径都给一个wather。
- linux下就只用一个watcher,有新的路径需要Add,就直接add进来就OK了。
Documentation
¶
There is no documentation for this package.
Source Files
¶
Click to show internal directories.
Click to hide internal directories.