Nesta página, veja como listar os objetos armazenados nos buckets do Cloud Storage, que são ordenados na lista de maneira lexicográfica pelo nome.
Antes de começar
Para receber as permissões necessárias para listar objetos, peça ao administrador
que conceda a você o papel do IAM de Leitor de objetos do Storage (roles/storage.objectViewer
)
para o bucket que contém os objetos que você quer
listar.
Se você planeja usar o console Google Cloud para realizar as tarefas desta página,
peça ao administrador para conceder a você o papel básico de Leitor (roles/viewer
), além do papel de Leitor de objetos do Storage (roles/storage.objectViewer
).
Esses papéis contêm as permissões necessárias para listar objetos. Para ver as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
storage.objects.list
storage.buckets.list
- Essa permissão só será necessária se você quiser usar o Google Cloud console para executar as tarefas nesta página.
Também é possível conseguir essas permissões com outros papéis predefinidos ou personalizados.
Para informações sobre como conceder papéis para buckets, consulte Usar o IAM com buckets.
Listar os objetos em um bucket
Siga estas etapas para listar os objetos em um bucket:
Console
- No console Google Cloud , acesse a página Buckets do Cloud Storage.
Na lista de buckets, clique no nome do bucket cujo conteúdo você quer visualizar.
Opcional: use a filtragem e a classificação para limitar e organizar os resultados na sua lista.
Linha de comando
Use o comando gcloud storage ls
:
gcloud storage ls gs://BUCKET_NAME
Em que:
BUCKET_NAME
é o nome do bucket que contém os objetos que você quer listar. Por exemplo,my-bucket
.
Bibliotecas de cliente
C++
Para mais informações, consulte a documentação de referência da API Cloud Storage C++.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
A amostra a seguir lista todos os objetos de um bucket:
A amostra a seguir lista os objetos com um prefixo determinado:
C#
Para mais informações, consulte a documentação de referência da API Cloud Storage C#.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
A amostra a seguir lista todos os objetos de um bucket:
A amostra a seguir lista os objetos com um prefixo determinado:
Go
Para mais informações, consulte a documentação de referência da API Cloud Storage Go.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
A amostra a seguir lista todos os objetos de um bucket:
A amostra a seguir lista os objetos com um prefixo determinado:
Java
Para mais informações, consulte a documentação de referência da API Cloud Storage Java.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
A amostra a seguir lista todos os objetos de um bucket:
A amostra a seguir lista os objetos com um prefixo determinado:
Node.js
Para mais informações, consulte a documentação de referência da API Cloud Storage Node.js.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
A amostra a seguir lista todos os objetos de um bucket:
A amostra a seguir lista os objetos com um prefixo determinado:
PHP
Para mais informações, consulte a documentação de referência da API Cloud Storage PHP.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
A amostra a seguir lista todos os objetos de um bucket:
A amostra a seguir lista os objetos com um prefixo determinado:
Python
Para mais informações, consulte a documentação de referência da API Cloud Storage Python.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
A amostra a seguir lista todos os objetos de um bucket:
A amostra a seguir lista os objetos com um prefixo determinado:
Ruby
Para mais informações, consulte a documentação de referência da API Cloud Storage Ruby.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
A amostra a seguir lista todos os objetos de um bucket:
A amostra a seguir lista os objetos com um prefixo determinado:
APIs REST
API JSON
Ter CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho
Authorization
.Use
cURL
para chamar a API JSON com uma solicitação para listar objetos:curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/o"
Em que
BUCKET_NAME
é o nome do bucket com os objetos que você quer listar. Por exemplo,my-bucket
.Use o parâmetro de consulta
includeFoldersAsPrefixes=True
para retornar pastas gerenciadas como parte dos resultados da lista. Ao usar o parâmetroincludeFoldersAsPrefixes
, o parâmetrodelimiter
precisa ser definido como/
.
API XML
Ter CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho
Authorization
.Use
cURL
para chamar a API XML com uma solicitação de bucketGET
:curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/BUCKET_NAME?list-type=2"
Em que
BUCKET_NAME
é o nome do bucket com os objetos que você quer listar. Por exemplo,my-bucket
.É possível usar um parâmetro de string de consulta
prefix=PREFIX
para limitar os resultados a objetos que tenham o prefixo especificado.
Como filtrar objetos
Ao listar objetos, é possível usar prefixos ou sufixos na solicitação de lista para filtrar objetos por nome.
Console
Para filtrar objetos pelo prefixo de nome usando o Google Cloud console, use o campo Filtrar objetos e pastas na página Detalhes do bucket.
Consulte Como filtrar e classificar para conferir outras opções de filtragem disponíveis usando o console do Google Cloud .
Linha de comando
É possível usar caracteres curinga no comando gcloud storage ls
para
filtrar objetos por prefixo ou sufixo. Por exemplo, o comando a seguir
lista apenas os objetos no bucket my-bucket
cujo nome começa com
image
e termina com .png
:
gcloud storage ls gs://my-bucket/image*.png
Se a solicitação for bem-sucedida, a resposta será semelhante a esta:
gs://my-bucket/image.png gs://my-bucket/image-dog.png gs://my-bucket/image-cat.png ...
É possível usar caracteres curinga de estrela dupla para corresponder a zero ou mais níveis de diretório em um caminho. Por exemplo, o comando a seguir lista apenas objetos cujo nome
termina em .jpeg
em qualquer diretório no bucket my-bucket
:
gcloud storage ls gs://my-bucket/**/*.jpeg
Se a solicitação for bem-sucedida, a resposta será semelhante a esta:
gs://my-bucket/puppy.jpeg gs://my-bucket/pug.jpeg gs://my-bucket/pets/dog.jpeg ...
APIs REST
API JSON
Ao listar objetos usando a API Cloud Storage JSON, use os parâmetros de string de consulta prefix
ou matchGlob
para filtrar os resultados. Para saber como usar esses parâmetros de string de consulta, confira a documentação de referência da API JSON com relação à lista de objetos.
Como fazer a filtragem por prefixo
Use prefix=PREFIX
ou o parâmetro de string de consulta para limitar os resultados a objetos ou pastas gerenciadas que tenham o prefixo especificado. Por exemplo, para listar todos os objetos no bucket my-bucket
com o prefixo folder/subfolder/
, faça uma solicitação de listagem de objetos usando o URL "https://storage.googleapis.com/storage/v1/b/my-bucket/o?prefix=folder/subfolder/"
:
O uso de prefix
para listar o conteúdo de uma pasta gerenciada é útil quando
você só tem permissão para listar objetos nela,
não no bucket inteiro. Por exemplo, digamos que você tenha o papel do IAM de Leitor de objetos do Storage (roles/storage.objectViewer
) para a pasta gerenciada my-bucket/my-managed-folder-a/
, mas não para a pasta gerenciada my-bucket/my-managed-folder-b/
. Para retornar apenas os
objetos em my-managed-folder-a
, especifique
prefix=my-managed-folder-a/
.
Ao limitar os resultados a uma pasta gerenciada e aos objetos nela, você precisa terminar PREFIX
com /
(por exemplo, prefix=my-managed-folder/
). Caso contrário, os resultados também podem incluir objetos adjacentes à pasta gerenciada. Neste exemplo, você tem um bucket que contém os seguintes objetos:
my-bucket/abc.txt
my-bucket/abc/object.txt
Especificar prefix=abc/
pode retornar os objetos
my-bucket/abc/object.txt
, enquanto especificar prefix=abc
pode retornar
my-bucket/abc.txt
e my-bucket/abc/object.txt
.
Como fazer a filtragem por expressão glob
Use o parâmetro de string de consulta matchGlob=GLOB_PATTERN
a fim de filtrar os resultados apenas para os objetos que correspondem a uma expressão glob específica. Por exemplo, matchGlob=**.jpeg
pode
ser usado para corresponder a todos os objetos que terminam em .jpeg
.
As solicitações que usam o parâmetro matchGlob
falharão se também incluírem um parâmetro delimiter
definido com um valor diferente de /
.
Considerações sobre desempenho ao listar objetos
A estrutura subjacente dos buckets com namespace hierárquico ativado influencia o desempenho da operação de listagem de objetos, quando comparada a buckets de namespace simples. Para mais informações, consulte Otimizar o desempenho em buckets com namespace hierárquico ativado.
A seguir
- Faça o download de um objeto do seu bucket.
- Visualize e edite metadados de objetos.
- Exclua objetos do bucket.
- Saiba como paginar resultados.