使用 rsync 只同步被修改的文件
Using rsync to sync only files that are modified
我正在尝试同步两个文件夹
/developer
和 /shared
(在 ubuntu 中)
当我修改 /shared
中的文件时,我希望能够将文件复制到 /developer
文件夹中
我试过了
rsync -r /shared /developer
但它似乎复制了所有内容,虽然我在那里只更改了两个文件。
如何只复制改变的文件。
我也试过了
rsync -rtu /shared /developer
不知怎的,我无法理解这个问题。
请帮忙。
试试这个:
rsync -a /shared/ /developer/
第一次 运行 它会更新每个文件的访问时间等,但随后的 运行 只会复制更新的内容。
-a
表示 "archive"。它意味着 -r
,但也意味着 -t
,这就是你所缺少的。
- 目录名称的尾部斜杠很重要。如果没有斜杠,它会将源目录 复制到目标目录 中,就像
cp
那样。这意味着当目标已经存在或不存在时它的行为会有所不同。
编辑:如果您希望它删除 /shared
中不再存在的文件,请添加 --delete
,并谨慎使用它 .
嗯,这也行
rsync -au --delete --update /shared/ /developer/
我正在尝试同步两个文件夹
/developer
和 /shared
(在 ubuntu 中)
当我修改 /shared
中的文件时,我希望能够将文件复制到 /developer
文件夹中
我试过了
rsync -r /shared /developer
但它似乎复制了所有内容,虽然我在那里只更改了两个文件。
如何只复制改变的文件。
我也试过了
rsync -rtu /shared /developer
不知怎的,我无法理解这个问题。
请帮忙。
试试这个:
rsync -a /shared/ /developer/
第一次 运行 它会更新每个文件的访问时间等,但随后的 运行 只会复制更新的内容。
-a
表示 "archive"。它意味着-r
,但也意味着-t
,这就是你所缺少的。- 目录名称的尾部斜杠很重要。如果没有斜杠,它会将源目录 复制到目标目录 中,就像
cp
那样。这意味着当目标已经存在或不存在时它的行为会有所不同。
编辑:如果您希望它删除 /shared
中不再存在的文件,请添加 --delete
,并谨慎使用它 .
嗯,这也行
rsync -au --delete --update /shared/ /developer/