Поиск по имени файла в AWS CLI: искать только в определенной папке? - PullRequest
0 голосов
/ 03 октября 2019

Есть ли способ, чтобы не просматривал всю корзину при поиске имени файла?

У нас миллионы файлов, поэтому каждый поиск, подобный этому, занимает минут :

aws s3api list-objects --bucket XXX --query "Contents[?contains(Key, 'tokens.json')]"

Я также могу сделать ключ, содержащий папкуимя, но это совсем не ускоряет:

aws s3api list-objects --bucket XXX --query "Contents[?contains(Key, 'folder/tokens.json')]"

Ответы [ 2 ]

2 голосов
/ 03 октября 2019

Есть опция prefix. Вы должны использовать эту опцию, а не синтаксис запроса, потому что запрос применяется после появления объекта списка. Подробности см. В документации .

1 голос
/ 03 октября 2019

Если вы регулярно ищете объекты в Amazon S3 с большим количеством объектов, вы можете рассмотреть возможность использования Amazon S3 Inventory , которая может обеспечить регулярный CSV-список объектов в корзине.

...