在CentOS系统中,inotify
是一个用于监控文件系统事件的Linux内核子系统。你可以使用inotifywait
工具来检测文件修改。以下是如何安装和使用inotifywait
的步骤:
更新系统包列表:
sudo yum update
安装inotify-tools:
sudo yum install inotify-tools
inotifywait
命令的基本语法如下:
inotifywait [选项] 监控路径
-m
:持续监控,直到手动终止。-r
:递归监控目录及其子目录。-e
:指定要监控的事件类型,例如modify
(文件修改)、create
(文件创建)、delete
(文件删除)等。监控单个文件修改:
inotifywait -m /path/to/your/file -e modify
监控目录及其子目录中的文件修改:
inotifywait -m -r /path/to/your/directory -e modify
监控多个事件:
inotifywait -m -r /path/to/your/directory -e modify -e create -e delete
输出详细信息:
inotifywait -m -r /path/to/your/directory -e modify --format '%w%f %e' --timefmt '%Y-%m-%d %H:%M:%S'
你可以编写一个简单的脚本来监控文件修改并执行某些操作。例如:
#!/bin/bash
MONITOR_DIR="/path/to/your/directory"
inotifywait -m -r -e modify "$MONITOR_DIR" |
while read -r directory events filename; do
echo "File $filename was modified in $directory at $(date)"
# 在这里添加你想要执行的操作
done
将上述脚本保存为monitor.sh
,然后赋予执行权限并运行:
chmod +x monitor.sh
./monitor.sh
通过这些步骤,你可以在CentOS系统中使用inotifywait
工具来检测文件修改。