rsync是linux中远程数据同步工具,可以快速同步多台机器之间的文件,rsync使用rsync算法来进行数据的同步,只会传输两个文件之间的不同部分,所以在传输速度上特别快。
这里只讲讲本人工作中最常用的用法。相信很多人都是用ftp文件传输工具进行上传文件,之前我也使用ftp上传文件的,但是后来安装了wsl环境(在Windows10下运行linux子系统),可以在linux下操作相关命令了,所以就再也没使用过ftp了,就直接用rsync来上传文件到远程服务器,方便了许多。如果没有配置wsl环境,还是得乖乖的使用ftp工具。
基本语法:
上传:rsync [OPTION] … SRC [user@]host:DEST
下载:rsync [OPTION] … [user@]host:SRC DEST
option参数有很多,这里只聊聊本人常用的
-v 输出详细信息
-a 递归传输文件,并保存文件属性
-u 仅仅进行更新,即跳过所有已经存在于DEST的文件
--delete 删除那些DEST中SRC没有的文件
--exclude=PATH 指定不需要传输的文件
--include=PATH 指定需要传输的文件
具体参数的解释网上有很多,就不在这里一一介绍了。举个栗子:
rsync -av --exclude=uwsgi.ini --exclude=uwsgi.pid --exclude=.env --exclude=sync_online.sh --exclude=cache/*