在CentOS上安装和使用inotify,可以按照以下步骤进行:
更新系统包列表:
sudo yum update -y
安装inotify-tools:
sudo yum install inotify-tools -y
inotifywait 是inotify-tools中的一个命令行工具,用于监视文件系统事件。
监视单个文件或目录:
inotifywait /path/to/file_or_directory
监视多个文件或目录:
inotifywait -m /path/to/file_or_directory1 /path/to/file_or_directory2
监视特定事件(如创建、删除、修改等):
inotifywait -m -e create,delete,modify /path/to/file_or_directory
设置监视的深度(递归监视子目录):
inotifywait -m -r -e create,delete,modify /path/to/directory
输出详细信息:
inotifywait -m -v /path/to/file_or_directory
将输出重定向到文件:
inotifywait -m -e create,delete,modify /path/to/file_or_directory > /var/log/inotify.log 2>&1 &
假设你想在某个目录下的文件被修改时自动备份到另一个目录,可以使用以下脚本:
#!/bin/bash
SOURCE_DIR="/path/to/source"
BACKUP_DIR="/path/to/backup"
inotifywait -m -e modify --format '%w%f' "$SOURCE_DIR" | while read FILE
do
cp "$FILE" "$BACKUP_DIR/$(basename "$FILE")"
echo "Backuped $FILE to $BACKUP_DIR"
done
将上述脚本保存为 backup_script.sh,然后赋予执行权限并运行:
chmod +x backup_script.sh
./backup_script.sh
inotifywait 可能会对系统性能产生一定影响,特别是在监视大量文件或目录时。通过以上步骤,你可以在CentOS上成功安装和使用inotify来监视文件系统事件。