rsync+inotify 同步两个文件夹内容


在 Akina 模板的开发过程中开发目录与项目运行目录不一样,需要一个工具时时同步两个文件,尝试过使用软连接,然而 php 不识别。百度后找到两个工具,配合使用完美实现文件的单向同步。

安装rsync

rsync 可以实现文件夹的同步

dnf install rsync 
# 使用格式
rsync -a 源目录 目标目录

安装inotify

dnf install inotify-tools

监控文件(夹)的改动

脚本

#!/bin/bash 
# 源文件
echo "监控文件修改中..."
From_dir="/root/workspace/Akina-for-Typecho/Akina"
# 同步命令
Rsync_cmd="rsync -av --delete /root/workspace/Akina-for-Typecho/Akina /www/wwwroot/cs.zixu.site/usr/themes/"
# 循环监控
while inotifywait -rqq -e modify,attrib,move,create,delete ${From_dir}
do
echo "执行同步..."
${Rsync_cmd}
echo "同步完成!"
echo "监控文件修改中..."
done

声明:纸盒博客|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - rsync+inotify 同步两个文件夹内容


Carpe Diem and Do what I like