centos

CentOS inotify 如何实现批量监控

小樊
92
2025-02-12 02:38:09
栏目: 智能运维

在 CentOS 上,可以使用 inotifywait 命令结合 shell 脚本来实现批量监控多个文件或目录

  1. 首先,确保你的系统已经安装了 inotify-tools。如果没有安装,可以使用以下命令安装:
sudo yum install inotify-tools
  1. 创建一个名为 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
  1. 为脚本添加可执行权限:
chmod +x monitor.sh
  1. 运行脚本:
./monitor.sh

这个脚本会监控在 file_list 中指定的所有文件或目录。当发生 CREATE、MODIFY、DELETE、MOVED_FROM 或 MOVED_TO 事件时,脚本会输出事件发生的文件路径,并执行你定义的操作。你可以根据需要修改脚本中的 file_list 和 event_mask 变量来实现批量监控。

0
看了该问题的人还看了