introduction

In short, I ususaly use rsync like in this example :

rsync -ah --info=stats1,progress2 --log-file=`date +%s`.log source/ destination/

An option --info=progress2 results in that during coping there will be only one line (‘progerss bar’) based on the whole transfer:

          1.01G  37%  967.24MB/s    0:00:01  xfr#6, to-chk=13/20)

An option --info=stats1 give two line file-transfer summary:

sent 2.69G bytes  received 363 bytes  769.39M bytes/sec
total size is 2.69G  speedup is 1.00

And created log file will contain something like this1 :

$ cat 1737435513.log 
2025/01/21 05:58:33 [89265] building file list
2025/01/21 05:58:33 [89265] cd+++++++++ tmp/
2025/01/21 05:58:33 [89265] >f+++++++++ tmp/Linedancer-e0b8395-x86_64.AppImage
2025/01/21 05:58:33 [89265] >f+++++++++ tmp/OpenHV-20231125-x86_64.AppImage
2025/01/21 05:58:35 [89265] cd+++++++++ tmp/BAR/
2025/01/21 05:58:35 [89265] >f+++++++++ tmp/BAR/Beyond-All-Reason-1.2988.0.AppImage
2025/01/21 05:58:35 [89265] cd+++++++++ tmp/Endless_Sky/
2025/01/21 05:58:36 [89265] >f+++++++++ tmp/Endless_Sky/Endless_Sky-v0.10.6-x86_64.AppImage
2025/01/21 05:58:36 [89265] sent 2.69G bytes  received 363 bytes  769.39M bytes/sec
2025/01/21 05:58:36 [89265] total size is 2.69G  speedup is 1.00

conclusion

rsync is an extensive tool, remember to study man rsync, or any of many pages that describes rsync usage in details, like this.

other

My current rsync version is 3.2.7, shiped in Ubuntu 24.04.

$ rsync --version
rsync  version 3.2.7  protocol version 31
...

  1. content of this file was altered (some lines were removed) ↩︎