У меня есть 2 ведра, ковш A и ковш B. Bucket A содержит файлы Javascript и bucket B содержит смесь javascript и других типов файлов. Я пытаюсь сделать синхронизацию только JS файлов из ковша A в B.Amazon S3 sync Удаление исключенных файлов
Я использую следующий:
AWS s3 синхронизация s3: // Ведро-а s3: // ковш-б --delete --exclude «*» --include «* .js»
Я предполагал, что это оставит ведро B с точной копией всех файлов JS. Однако вышеприведенная команда начнет удаление всех файлов, не являющихся Js в Bucket B.
Когда я запускаю следующую команду:
AWS s3 синхронизации. s3: // ковшеобразные-б --delete --exclude "*" --include "* .js"
С текущей директории, содержащей копию ведро А, ведро B будет иметь одни и те же файлы JS так как файлы A и non js не будут затронуты.
Почему эта команда функционирует по-разному при синхронизации локально с ведром по сравнению с ведром в ковш?
EDIT: Добавлен ввод/вывод CLI для воспроизведения проблемы.
Darrrens-MBP:testFolder darren$ aws --version
aws-cli/1.7.4 Python/2.7.9 Darwin/14.4.0
Darrrens-MBP:testFolder darren$ aws s3 ls s3://tmp-test-bucket-a
2015-09-01 11:40:44 2 test1.js
2015-09-01 11:40:43 2 test2.js
Darrrens-MBP:testFolder darren$ aws s3 ls s3://tmp-test-bucket-b
2015-09-01 11:39:32 2 test1.js
2015-09-01 11:39:34 2 test2.js
2015-09-01 11:39:34 3 test3.php
Darrrens-MBP:testFolder darren$ ls
test1.js test2.js
Darrrens-MBP:testFolder darren$ aws s3 sync . s3://tmp-test-bucket-b --delete --exclude "*" --include "*.js"
Darrrens-MBP:testFolder darren$ aws s3 sync s3://tmp-test-bucket-a s3://tmp-test-bucket-b --delete --exclude "*" --include "*.js"
delete: s3://tmp-test-bucket-b/test3.php
copy: s3://tmp-test-bucket-a/test2.js to s3://tmp-test-bucket-b/test2.js
copy: s3://tmp-test-bucket-a/test1.js to s3://tmp-test-bucket-b/test1.js
Мне не удалось воспроизвести результаты. Не могли бы вы показать некоторые «до и после» списки источника и назначения вместе с командами 'sync', чтобы мы могли попытаться воспроизвести ситуацию? Кроме того, стоит проверить, что вы используете последнюю версию [AWS Command Line Line Interface (CLI)] (http://aws.amazon.com/cli/). –
Привет, Джон, спасибо, что вернулись ко мне. Я обновил вопрос, включив пример проблемы. Как вы можете видеть, у меня одинаковый контент в bucket a, как в локальном каталоге. Почему результат синхронизации отличается? Я использую OSX, но у меня был тот же результат на ubuntu 12.04 – DarrenCibis
Хорошо, я могу воспроизвести поведение, которое вы испытали. Нет удаления с локального компьютера, но удаление между ведрами S3. Я поднял [проблему против проекта CLI AWS] (https://github.com/aws/aws-cli/issues/1481). –