在 CentOS 上,可以使用 inotifywait 命令结合 shell 脚本来实现批量监控多个文件或目录
- 首先,确保你的系统已经安装了 inotify-tools。如果没有安装,可以使用以下命令安装:
sudo yum install inotify-tools
- 创建一个名为 monitor.sh 的 shell 脚本,并添加以下内容:
#!/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 变量来实现批量监控。