rsync удалять файлы из целевого объекта, если они не существуют в источнике

Хорошо, поэтому я просмотрел существующие ответы здесь и в другом месте, но я не могу это выяснить, если я воспользуюсь опцией --ignore-existing вместе с опцией --delete, будет ли эта комбинация еще доступной rsync удаляет файлы из целевого объекта, если они больше не существуют в источнике И все еще предотвращают пересылку rsync из существующих файлов в цель?

Спасибо

1
задан 27 March 2015 в 10:46

1 ответ

Это работает только частично

Из справочной страницы rsync:

[..]
--delete                delete extraneous files from dest dirs
[..]
--ignore-existing       skip updating files that exist on receiver
[..]

Пример:

% ls ~/tmp/A       
123  456
% ls ~/tmp/B
456

% rsync --recursive --ignore-existing --delete ~/tmp/A/ ~/tmp/B
% ls ~/tmp/B                                                   
123  456

% rm ~/tmp/A/456

% rsync --recursive --ignore-existing --delete ~/tmp/A/ ~/tmp/B
% ls ~/tmp/B                                                   
123

% touch ~/tmp/B/789
% ls ~/tmp/B       
123  789

% rsync --recursive --ignore-existing --delete ~/tmp/A/ ~/tmp/B
% ls ~/tmp/B                                                   
123

Теперь обратите внимание на дату изменения [ f4]

% ls -la ~/tmp/A
insgesamt 8
drwxrwxr-x 2 aboettger aboettger 4096 Mär 27 09:41 .
drwxrwxr-x 7 aboettger aboettger 4096 Mär 27 09:25 ..
-rw-rw-r-- 1 aboettger aboettger    0 Mär 27 09:35 123
-rw-rw-r-- 1 aboettger aboettger    0 Mär 27 09:42 456

% rsync --recursive --ignore-existing --delete ~/tmp/A/ ~/tmp/B

% ls -la ~/tmp/B                                               
insgesamt 8
drwxrwxr-x 2 aboettger aboettger 4096 Mär 27 09:45 .
drwxrwxr-x 7 aboettger aboettger 4096 Mär 27 09:25 ..
-rw-rw-r-- 1 aboettger aboettger    0 Mär 27 09:35 123
-rw-rw-r-- 1 aboettger aboettger    0 Mär 27 09:42 456

% touch ~/tmp/A/456

% ls -la ~/tmp/A   
insgesamt 8
drwxrwxr-x 2 aboettger aboettger 4096 Mär 27 09:41 .
drwxrwxr-x 7 aboettger aboettger 4096 Mär 27 09:25 ..
-rw-rw-r-- 1 aboettger aboettger    0 Mär 27 09:35 123
-rw-rw-r-- 1 aboettger aboettger    0 Mär 27 09:46 456

% rsync --recursive --ignore-existing --delete ~/tmp/A/ ~/tmp/B

% ls -la ~/tmp/B                                               
insgesamt 8
drwxrwxr-x 2 aboettger aboettger 4096 Mär 27 09:45 .
drwxrwxr-x 7 aboettger aboettger 4096 Mär 27 09:25 ..
-rw-rw-r-- 1 aboettger aboettger    0 Mär 27 09:35 123
-rw-rw-r-- 1 aboettger aboettger    0 Mär 27 09:42 456
0
ответ дан 23 May 2018 в 22:00

Другие вопросы по тегам:

Похожие вопросы: