除非我遗漏了什么,否则我所看过的所有api似乎都不会告诉您<S3 bucket>/<文件夹>中有多少对象。有办法统计一下吗?
当前回答
s3浏览器可从http://s3browser.com/下载并安装。当你选择一个桶在中央的右角,你可以看到桶中的文件数量。但是,在当前版本中显示的大小是不正确的。
Gubs
其他回答
使用AWS CLI
aws s3 ls s3://mybucket/ --recursive | wc -l
or
aws cloudwatch get-metric-statistics \
--namespace AWS/S3 --metric-name NumberOfObjects \
--dimensions Name=BucketName,Value=BUCKETNAME \
Name=StorageType,Value=AllStorageTypes \
--start-time 2016-11-05T00:00 --end-time 2016-11-05T00:10 \
--period 60 --statistic Average
注意:上面的cloudwatch命令似乎适用于某些人,而不适用于其他人。讨论地点:https://forums.aws.amazon.com/thread.jspa?threadID=217050
使用AWS Web控制台
您可以查看cloudwatch的度量部分,以获得存储的对象的大约数量。
我有大约5000万个产品,使用aws s3 ls花了一个多小时来计数
虽然这是一个老问题,并且反馈是在2015年提供的,但现在它要简单得多,因为S3 Web控制台启用了“获取大小”选项:
它提供了以下内容:
没有办法,除非你
以1000个为一组列出它们(这可能很慢,而且占用带宽——amazon似乎从不压缩XML响应),或者 在S3上登录您的帐户,然后进入帐户-使用。似乎账单部门确切地知道你存储了多少对象!
如果您存储了5000万个对象,那么仅仅下载所有对象的列表实际上就需要花费一些时间和金钱。
也可以看到这个关于StorageObjectCount的线程——它在使用数据中。
一个S3 API至少能获得基础知识,即使它是几个小时以前的,也会很棒。
有一个——summary开关,显示桶的摘要信息(即对象的数量,总大小)。
下面是使用AWS cli的正确答案:
aws s3 ls s3://bucketName/path/ --recursive --summarize | grep "Total Objects:"
Total Objects: 194273
参见文档
Aws s3 ls s3://bucket-name/folder-prefix-if-any——recursive | wc -l .使用实例
推荐文章
- 如何从Python包内读取(静态)文件?
- 为什么我得到“Pickle - EOFError: run out of input”读取一个空文件?
- 我如何获得亚马逊的AWS_ACCESS_KEY_ID ?
- 如何使所有对象在AWS S3桶公共默认?
- 在PostgreSQL中快速发现表的行数
- 写字符串到文本文件,并确保它总是覆盖现有的内容。
- 从另一个文件导入变量?
- 为什么我应该使用亚马逊Kinesis而不是SNS-SQS?
- 寻找不属于特定用户的文件
- 如何复制文件跨计算机使用SSH和MAC OS X终端
- 如何重命名AWS S3 Bucket
- 如何在node.js中移动文件?
- 如何修改文本文件?
- AWS ECS中的任务和服务之间有什么区别?
- 我如何得到一个Swift枚举的计数?