Итак, я вижу консоль S3 и могу войти в свою папку со списком файлов, но не могу найти способ узнать общее количество файлов в ней, кроме как перейти к постраничной навигации, что не работает, учитывая тысячи файлов.
решение1
Это выведет список ваших объектов, и в конце вы увидите общее количество объектов и их размер:
aws s3 ls s3://bucketName/path/ --recursive --summarize
просто измените bucketName на имя вашего контейнера, а path на самом деле является папкой внутри контейнера, если вам это также нужно (или удалите его, если вам нужен весь контейнер)
Вы также можете использовать s3api из cli:
aws s3api list-objects --bucket bucketName --query "[length(Contents[])]"
Как отмечено в комментарии, в случае большого ведра это может занять некоторое время.
решение2
если вам просто нужно количество файлов без фактической печати файлов, вы можете передать то, что@Кальдазерпредложил wc -l
понравиться
aws s3 ls s3://bucketName/path/ | wc -l
решение3
Это легко сделать непосредственно в новой консоли S3.
Как показано здесь, выберите контейнер S3, а затем выберите интересующую вас папку. Затем нажмите кнопку Actions
и выберите, Get total size
как показано здесь:
Затем вы должны увидеть всплывающее окно, показывающее количество объектов в папке и рассчитанный размер, например:
решение4
Другой способ получить только количество объектов в вашем контейнере — это использовать grep
«Всего объектов», что является частью вывода, автоматически отображаемого при использовании --summarize
:
aws s3 ls s3://bucketName/path/ --recursive --summarize | grep "Total Objects:"
Для папки с 1633 файлами это вернет:
Total Objects: 1633