rsync - 排除超过特定大小的文件?

Ama*_*rus 51 linux unix rsync file-transfer

我正在将我的桌面备份到远程机器。我基本上是在做rsync -a ~ example.com:backup/但是有大量的大文件,例如维基百科转储等。我关心的大多数文件都很小,例如 firefox cookie 文件,或.bashrc. 是否有一些对 rsync 的调用会排除超过特定大小的文件?这样我就可以先复制所有小于 10MB 的文件,然后再复制所有文件。这样我就可以对最重要的文件进行快速备份,然后对其他所有文件进行更长的备份。

dav*_*vey 84

有一个max-size选项:

--max-size=SIZE         don't transfer any file larger than SIZE
Run Code Online (Sandbox Code Playgroud)

所以:

# rsync -rv --max-size=1.5m root@tss01:/tmp/dm
Run Code Online (Sandbox Code Playgroud)

将只发送小于 1.5m 的文件。

关于来自 man 的大小:后缀如下:“K”(或“KiB”)是 kibibyte(1024),“M”(或“MiB”)是 mebibyte(1024*1024),“G”(或“GiB”)是一个 gibibyte (1024*1024*1024)。如果您希望乘数为 1000 而不是 1024,请使用“KB”、“MB”或“GB”。(注意:所有值也接受小写。)最后,如果后缀以“+1”或“-1”结尾,则该值将在指定方向偏移一个字节*

  • 但是请注意,来自手册页的 --max-size 不是真正的“排除”:此选项是传输规则,而不是排除,因此它不会影响进入文件列表的数据,因此它不会影响删除。它只是限制接收方请求传输的文件。 (6认同)