2015-11-19 3 views
0

Я попытался сделать это с помощью команды sync, но он пытается удалить файлы из целевого ведра, которые не находятся в исходном ковше. как я могу переместить два ведра в одно ведро с s3cmd?s3cmd sync переместить два ведра в один ведро

Ситуация заключается в том, что я решил, что мы будем использовать несколько ковшей, но клиент хотел бы использовать единое ведро для всех файлов.

Когда я пробовал это с --skip-existing, отметьте это 6559 files at destination to delete, что вызвало у меня панику, поэтому я просто CTRL-C 'd сценарий. Я снова проверил первое ведро и сказал, что 13 целевых файлов должны быть удалены, но когда я иду в ведро, они все еще там. можно ли предположить, что пропустить существующий будет препятствовать тому, чтобы он удалял файлы из удаленного ведра, которых нет в исходном ковше?

ответ

0

Благодаря @fviard из-за github для ответа на мой запрос. здесь я получил ответ:

По умолчанию синхронизация не удаляет файлы в пункте назначения, которые не находятся в источнике . Он может сказать вам, что в резюме, но он не будет делать . Убедитесь, что у вас есть следующая конфигурация: delete_after = False delete_after_fetch = False delete_removed = False и что вы не используете опцию в командной строке, например «-delete-removed».

К тому же вам не нужно делать что-либо в разделенных командах. Без "Пропускать существующие", вы можете сделать что-то подобное: синхронизация s3: // source1/s3: // source2/s3: // source3/s3: // mydestination/

TLDR ; он удаляет файлы только в том случае, если вы сконфигурировали его для этого в конфиге. в противном случае предупреждение может быть проигнорировано.

Смежные вопросы