在 CentOS 上,可以使用 inotifywait 命令结合 shell 脚本来实现批量监控多个文件或目录
sudo yum install inotify-tools
#!/bin/bash
# 要监控的文件或目录列表
file_list=(
"/path/to/directory1"
"/path/to/directory2"
"/path/to/file1"
"/path/to/file2"
)
# 监控事件
event_mask="CREATE,MODIFY,DELETE,MOVED_FROM,MOVED_TO"
# 使用 inotifywait 监控文件或目录的变化
inotifywait -m -r -e $event_mask --format '%w%f' "${file_list[@]}" | while read file
do
echo "事件发生在: $file"
# 在这里执行你需要的操作,例如备份文件、发送通知等
done
chmod +x monitor.sh
./monitor.sh
这个脚本会监控在 file_list 中指定的所有文件或目录。当发生 CREATE、MODIFY、DELETE、MOVED_FROM 或 MOVED_TO 事件时,脚本会输出事件发生的文件路径,并执行你定义的操作。你可以根据需要修改脚本中的 file_list 和 event_mask 变量来实现批量监控。