为什么 rsync 会创建 ~ 文件?

Why does rsync create ~ files?

我运行以下每日crontab:

rsync -e 'ssh -p xx' -ab --inplace --delete myname@domain.com:/home/myname/backup/ /media/internal/myname/backup/

它创建这些文件:

-rw-r--r-- 1 myname myname 432M Oct  1 00:01 monthly-db-backup.tar.gz
-rw-rw-r-- 1 myname myname 431M Sep  1 00:00 monthly-db-backup.tar.gz~
-rw-r--r-- 1 myname myname   74 Sep 27 10:08 monthly.py
-rw-rw-r-- 1 myname myname   74 Aug 24  2017 monthly.py~
-rw-r--r-- 1 myname myname 1.5M Oct 11 00:00 domain.sql
-rw-r--r-- 1 myname myname 1.5M Oct 10 00:00 domain.sql~
-rwxr--r-- 1 myname myname 8.0K Sep 27 10:18 sessionbackup.db
-rwxrw-r-- 1 myname myname 8.0K Jun  5  2019 sessionbackup.db~

有人知道它为什么创建这些波浪号 (~) 文件吗?也有人知道删除它们的快速方法吗?

Anyone know why it creates these tilde (~) files?

那是因为您指定给 rsync-b 选项。它的目的正是要求(为要替换的目标文件创建备份文件)。

Also anyone know a quick way to delete them?

如果没有要处理的子目录结构(例如,如果您提供了完整的文件列表),那么

rm /path/to/the/directory/*~

就足够了。如果您也需要清理该目录子目录中的备份文件,那么

find /path/to/the/directory -name '*~' -delete

会处理的。