Переместить файлы из корзины S3 в папку на основе шаблона имени файла - PullRequest
0 голосов
/ 06 марта 2020

У меня есть корзина S3 с несколькими тысячами файлов, имена файлов которых всегда соответствуют шаблону {имя_хоста}. {Contenttype}. {YyyyMMddHH} .zip. Я хочу создать скрипт, который будет запускаться один раз в день для перемещения этих файлов в папки на основе года и месяца в имени файла.

Если я попробую следующую команду aws -cli

aws s3 mv s3://mybucket/*.202001* s3://mybucket/202001/

Я получаю следующую ошибку:

fatal error: An error occurred (404) when calling the HeadObject operation: Key "*.202001*" does not exist

Есть ли команда aws -cli, которую я мог бы запустить по расписанию для достижения этой цели?

1 Ответ

2 голосов
/ 07 марта 2020

Я думаю, что путь вперед будет через - параметр фильтра, используемый в командах CLI S3 .

Итак, для вашего случая,

aws s3 mv s3://mybucket/ s3://mybucket/202001/ --recursive --exclude "*" --include "*.202001*"

, вероятно, добьется цели.

Для планирования ежедневного запуска команды CLI, я думаю, вы можете сослаться на В AWS, ежедневно запускать команду CLI AWS

...