inotify
是 Linux 系统中用于监控文件系统事件的一个强大的工具
-
首先,确保你的系统已经安装了
inotify-tools
。如果没有安装,可以使用以下命令进行安装:对于基于 Debian 的系统(如 Ubuntu):
sudo apt-get install inotify-tools
对于基于 RHEL 的系统(如 CentOS):
sudo yum install inotify-tools
-
创建一个名为
monitor.sh
的脚本文件:touch monitor.sh chmod +x monitor.sh
-
使用文本编辑器打开
monitor.sh
,然后将以下内容粘贴到文件中:#!/bin/bash # 监控的目录 directory_to_watch="/path/to/your/directory" # 事件掩码,可以根据需要添加或删除事件 event_mask="IN_MODIFY,IN_CREATE,IN_DELETE" # 使用 inotifywait 命令监控目录中的事件 inotifywait -m -r -e $event_mask --format '%w%f' "$directory_to_watch" | while read file do echo "事件发生在:$file" # 在这里添加你想要执行的操作,例如备份文件、发送通知等 done
请将
/path/to/your/directory
替换为你想要监控的目录路径。你还可以根据需要修改事件掩码以监控其他类型的事件。 -
保存并关闭文件。现在,你可以运行这个脚本来监控指定目录中的文件系统事件:
./monitor.sh
这样,你就可以根据需要添加自己的规则来监控文件系统事件了。如果需要更高级的功能,你还可以考虑使用 inotifywait
的其他选项和脚本编写技巧。