Linux 下监控文件变化的方法(监控文件变化linux)
随着信息化技术的发展,监控文件变化变得更加重要了。如果一项服务器上的文件发生变化,你需要在第一时间知道。在 Linux 下,可以通过几行简单的代码就可以实现文件变化的即时监控。
第一步:安装 LRN 工具
lrn 可以产生使用的消息(信号)来监视 ssh 和 sftp 服务,从而可以探测并监控文件的变化。 利用 linux 上的 apt-get 命令安装 LRN 工具,如下:
# 安装 lrn
sudo apt-get install lrntools
第二步:使用 lrn 命令行
接下来可以使用 lrn 命令行来监控文件。如果需要监视一个文件夹下的所有文件,只需要使用如下命令:
lrn -f /path/to/dir
该命令会一直运行,监听 path/to/dir 目录下文件变化,如果有 change 事件发生,该工具就会把变化的信息打印出来:
Changed file: FILE.TXT
Changed dir: FOLDER/
除了检测 change 事件,LRN 还支持其它的事件,如 CREATE 和 DELETE 事件,如果需要检测这些事件,可以使用 -e 参数指定。
lrn -f -e create,delete /path/to/dir
第三步:使用 inotify-tools
inotify-tools 是 Linux 上一个真正完善可用的文件系统事件监控器,可以用来实时监控文件系统的变化,它也支持 CREATE 和 DELETE 等多种文件事件。使用 inotify-tools 监控文件变化也很简单,只需要使用如下命令:
inotifywait -m -r /path/to/dir -e create -e delete
该命令会输出被监控的文件发生何种变化,如果文件夹下有文件被创建的话,它会立即通知你:
CREATE,ISDIR FOLDER
同样的,如果有文件被删除也会通知你:
DELETE,ISDIR FILE.TXT
因此,在 Linux 下使用 LRN 或者 inotify-tools 工具,就可以很简单的实时监控文件变化。