2013-11-01 3 views
0

Работает на OSX 10.9. В терминале bash я пытаюсь скопировать файлы из dir a в dir b, удалив файлы из каталога a по мере их копирования.rsync --delete-after issues

Я использую следующую команду:

rsync -av --delete -after /a/* /b 

файлы из a копии к b, но файлы в a все еще там после передачи.

+0

Что имеет питона делать с этим вопросом? – tawmas

ответ

6

Это не то, что --delete. --delete (и его варианты вроде --delete-after) не удаляют файлы из источника a, они удаляют файлы с целевого b, которых нет в источнике. Аргумент, который вы ищете, - --remove-source-files.

Попробуйте rsync -av --remove-source-files /a/ /b/

+0

Спасибо. но этот вариант просто удаляет файлы. Теперь, как удалить каталоги с файлами? – shgnInc

0

Попробуйте это:

rsync -av --remove-source-files /a/ /b/ && rm -rf /a/* 
+0

Почему дополнительный rm -rf? против ответа @StvnW без этого шага? это очищает пустые каналы? – t1m0

+0

rm -rf удаляет все, включая пустые (не пустые) каталоги – dtp70