-r参数表示递归,即包含子目录。
--remove-source-files参数表示传输成功后,删除发送方的文件。
--size-only参数表示只同步大小有变化的文件,不考虑文件修改时间的差异。
--suffix参数指定文件名备份时,对文件名添加的后缀,默认是~。
-u、--update参数表示同步时跳过目标目录中修改时间更新的文件,即不同步这些有更新的时间戳的文件。
-v参数表示输出细节。-vv表示输出更详细的信息,-vvv表示输出最详细的信息。
--version参数返回 rsync 的版本。
-z参数指定同步时压缩数据。
八、套娃现象
source不带斜杆和带斜杆的区别是,一个是传文件夹过去,一个是传文件夹中的文件过去。
$ rsync -a source/ destination
不会套娃:
sudo rsync -auv -e 'ssh -p 22 -i /home/xiaojing/MARS.pem' /ldata/temp/synctest/ ubuntu@69.230.236.43:/ldata/temp2/synctest
sudo rsync -auv -e 'ssh -p 22 -i /home/xiaojing/MARS.pem' /ldata/temp/synctest/ ubuntu@69.230.236.43:/ldata/temp2/synctest/
如果文件已存在,会出现套娃
sudo rsync -auv -e 'ssh -p 22 -i /home/xiaojing/MARS.pem' /ldata/temp/synctest ubuntu@69.230.236.43:/ldata/temp2/synctest
sudo rsync -auv -e 'ssh -p 22 -i /home/xiaojing/MARS.pem' /ldata/temp/synctest ubuntu@69.230.236.43:/ldata/temp2/synctest/
sudo rsync -auv -e 'ssh -p 22 -i /home/xiaojing/MARS.pem' /ldata/temp/ ubuntu@69.230.236.43:/ldata/temp2/synctest
sudo rsync -auv -e 'ssh -p 22 -i /home/xiaojing/MARS.pem' /ldata/temp/ ubuntu@69.230.236.43:/ldata/temp2/synctest/
那个套两层路径,可能是这个写法
sudo rsync -auv -e 'ssh -p 22 -i /home/xiaojing/MARS.pem' /ldata/temp ubuntu@69.230.236.43:/ldata/temp2/synctest/
sudo rsync -auv -e 'ssh -p 22 -i /home/xiaojing/MARS.pem' /ldata/temp ubuntu@69.230.236.43:/ldata/temp2/synctest
不会套娃
sudo rsync -auv -e 'ssh -p 22 -i /home/xiaojing/MARS.pem' /ldata/temp/synctest ubuntu@69.230.236.43:/ldata/temp2
sudo rsync -auv -e 'ssh -p 22 -i /home/xiaojing/MARS.pem' /ldata/temp/synctest ubuntu@69.230.236.43:/ldata/temp2/
不会套娃,但会传到上一层目录
sudo rsync -auv -e 'ssh -p 22 -i /home/xiaojing/MARS.pem' /ldata/temp/synctest/ ubuntu@69.230.236.43:/ldata/temp2
sudo rsync -auv -e 'ssh -p 22 -i /home/xiaojing/MARS.pem' /ldata/temp/synctest/ ubuntu@69.230.236.43:/ldata/temp2/
参考源文:阮一峰的《rsync 用法教程》