我可以只输出摘要吗?

hor*_*ley 46 linux backup rsync

我用rsync备份了一个非常大的目录,包含很多子目录和文件,所以我不想看到“增量文件列表”。我只想知道最后的总结。如果我使用参数-q,则根本不会输出任何内容。我可以只输出摘要吗?

Bob*_*ein 78

感谢Wayne Davison提示,我使用了--stats备份选项:

rsync -am --stats src/ dest/
Run Code Online (Sandbox Code Playgroud)

最后的小总结不错,例如

Number of files: 6765
Number of files transferred: 0
Total file size: 709674 bytes
Total transferred file size: 0 bytes
(10 more lines)
Run Code Online (Sandbox Code Playgroud)

  • ...此外,避免“文件列表”的前提条件是不使用标志“-v”和“-P”。 (3认同)
  • 这应该是公认的回应。 (2认同)
  • 目前,这个答案使用“-m”,但我认为没有必要。以下内容应该足够了:`rsync -a --stats src/ dest/` (2认同)
  • @csonuryilmaz 我没有包含它,因为我承认我不太了解 sed,并且它在 cygwin/Win11 中对我不起作用 - 它只省略了第一行,即“接收增量文件列表”。也许这是 LF 与 CRLF 的问题。 (2认同)

Mar*_*rco 17

使用以下内容:

rsync -vr src/ dest/ | sed '0,/^$/d'
Run Code Online (Sandbox Code Playgroud)

说明:rsync使用-v标志以详细模式运行。它输出一个详细的文件列表、一个空行和摘要。现在sed用于利用摘要由空行分隔的事实。直到第一个空行的所有内容都不会打印到标准输出。^$匹配一个空行并d防止它被输出。


小智 11

试试这个命令

rsync -a --info=progress2 --stats source destination
Run Code Online (Sandbox Code Playgroud)

输出

32,342,135  10%  134.45kB/s    0:03:54 (xfr#386, to-chk=1059/7326)
Run Code Online (Sandbox Code Playgroud)