我正在尝试获取给定AWS账户上S3存储桶总数的列表。
使用boto3和Python 2.7,我执行了以下操作:
import boto3
s3 = boto3.resource('s3')
for bucket in s3.buckets.all():
bucket_names = (bucket.name)
print bucket_names.count('\n')
但是,这会导致bucket_names中的每一行输出为0。本质上,如果我要在nix shell中执行此操作,则尝试获取等效的'wc -l'。
答案 0 :(得分:1)
您可以使用s3客户端。
import boto3
client = boto3.client('s3')
response = client.list_buckets()
print(len(response['Buckets']))
答案 1 :(得分:0)
您还可以通过使用boto3资源来获取存储桶数,
import boto3
buckets = [bucket.name for bucket in boto3.resource('s3').buckets.all()]
print(len(buckets))
print('\n'.join(buckets))
还将在其中打印存储桶名称。