最新消息:

rsync的用法探讨篇

Linux ipcpu 4469浏览

实验目录结构如下:
/tmp/test01     #文件夹
/tmp/test01/yy
/tmp/test00       #文件夹
/tmp/test00/tt

测试一:
rsync -avz   test00   test01
等价于rsync -avz   test00  test01/
结果是将test00整个文件夹放到了test01文件夹下面,如下:
/tmp/test01
/tmp/test01/yy
/tmp/test01/test00
/tmp/test01/test00/tt
/tmp/test00
/tmp/test00/tt

测试二:
rsync -avz   test00/   test01/
等价于 rsync -avz   test00/   test01
rsync -avz   test00/*  test01/
结果是将test00里面的内容复制到test01里面,如下:
/tmp/test01
/tmp/test01/yy
/tmp/test01/tt
/tmp/test00
/tmp/test00/tt
结论:使用rsync对文件夹进行“对拷”时,文件夹名称后都要加/, 这样可以避免实验一中的情况。 rsync -avz  文件夹/   文件夹/

测试三:
现在我们想让两个目录内容一样。也就是删掉目的地址里面多余的东西。使用- -delete参数。
rsync  -avz –delete test00/*  test01/  【失败!结果如下:】
/tmp/test01
/tmp/test01/yy
/tmp/test01/tt
/tmp/test00
/tmp/test00/tt

rsync  -avz –delete test00/   test01/ 【成功!结果如下:】
/tmp/test01
/tmp/test01/tt
/tmp/test00
/tmp/test00/tt

结论:rsync -avz   test00/*  test01/其实相当于把test00所有文件列出来,源地址并不是一个目录,所以- -delete失效。

rsync的其他用法:

删海量文件
新建个文件夹tt
rsync -avz –delete tt/  /var/spool/clientmqueue/

转载请注明:IPCPU-网络之路 » rsync的用法探讨篇