我需要一个 rsync 命令,将目录从源文件夹移动到远程文件夹并覆盖远程端的现有目录。
- 我不想写入远程端的现有目录。因此,如果源和远程上都存在某个目录,则应在远程端将其删除,并创建一个新目录来替换它。
- 如果源端不存在目录,则不应删除远程目录(所以不
--delete
) - 如果远程端不存在目录,则应将其移动。
编辑:这是操作开始之前的示例文件列表:
.
├── remote
│ ├── a
│ │ ├── test1_old.txt
│ │ └── test2_old.txt
│ ├── b
│ │ ├── test1.txt
│ │ └── test2.txt
│ └── d
│ ├── test1.txt
│ └── test2.txt
└── source
├── a
│ ├── test1.txt
│ ├── test2.txt
│ └── test3.txt
├── b
│ ├── test1.txt
│ └── test2.txt
└── c
├── test1.txt
└── test2.txt
操作后应该是这样的:
.
├── remote
│ ├── a
│ │ ├── test1.txt
│ │ ├── test2.txt
│ │ └── test3.txt
│ ├── b
│ │ ├── test1.txt
│ │ └── test2.txt
│ ├── c
│ │ ├── test1.txt
│ │ └── test2.txt
│ └── d
│ ├── test1.txt
│ └── test2.txt
└── source
├── a
│ ├── test1.txt
│ ├── test2.txt
│ └── test3.txt
├── b
│ ├── test1.txt
│ └── test2.txt
└── c
├── test1.txt
└── test2.txt