Пытается скопировать локальный файл с именем test.txt в мой ведро s3 и добавить метаданные в файл.AWS S3 CLI CP файл и добавить метаданные
Но он всегда печатает сообщение об ошибке:
аргумент --metadata-директива: Invalid выбор, допустимые варианты: COPY | REPLACE
Возможно ли это сделать с помощью команды cp, так как я понимаю, что документы должны быть возможны. AWS CLI CP DOCS
Это команды, которые я пробовал:
aws s3 cp test.txt to s3://a-bucket/test.txt --metadata x-amz-meta-cms-id:34533452
aws s3 cp test.txt to s3://a-bucket/test.txt --metadata-directive COPY --metadata x-amz-meta-cms-id:34533452
aws s3 cp test.txt to s3://a-bucket/test.txt --metadata-directive COPY --metadata '{"x-amz-meta-cms-id":"34533452"}'
aws s3 cp test.txt to s3://a-bucket/test.txt --metadata '{"x-amz-meta-cms-id":"34533452"}'
AWS --version: AWS-кли/1.9.7 Python/2.7.10 Darwin/16.1.0 botocore/1,3. 7
OS: MacOS Sierra версия 10.12.1
Редактировать
Стоит отметить, что загрузка файла без флага -metadata выполняется нормально.
Хм, я проверил помощь для моей версии кли с aws s3 cp help
Оказывается, это не список --metadata
как вариант, так как документы на данную ссылку выше делает.
Если запущенный старую версию AWS Cli
Use aws s3api put-object
Как загрузить файл в ведро и добавить метаданные:
aws s3api put-object --bucket a-bucket --key test.txt --body test.txt --metadata '{"x-amz-meta-cms-id":"34533452"}'
Docs: AWS S3API DOCS
Спасибо спариваться! По какой-то причине я прочитал 1.9 как более высокую версию, которая 1.11 –
Для меня команда json должна была быть внутри '' aws s3 cp test.txt s3: //a-bucket/test.txt --metadata '{"x -amz-meta-cms-id ":" 34533452 "} ' –
hum ... ok будет редактировать, я не повторил честно - думал, что это сработало без цитаты. отредактирует, так что он будет работать как ответ –