Opções de linha de comando de nível superior

Descrição

A gsutil é compatível com opções separadas para o comando gsutil de nível superior e para os subcomandos individuais (como cp, rm etc.) As opções de nível superior controlam o comportamento da gsutil que se aplica a todos os comandos. Por exemplo, no comando:

gsutil -m cp -p file gs://bucket/obj

a opção -m se aplica à gsutil, enquanto a opção -p se aplica ao subcomando cp.

Opções

-D

Mostra solicitações/cabeçalhos HTTP e informações de depuração adicionais necessárias ao postar solicitações de suporte, incluindo rastreamentos de pilha de exceção.

-DD Igual a -D, além de payload upstream do HTTP.
-h

Permite que você especifique determinados cabeçalhos HTTP, por exemplo:


gsutil -h "Cache-Control:public,max-age=3600" \
       -h "Content-Type:text/html" cp ...

Observe que você precisa citar os cabeçalhos/valores que contêm espaços (como "Content-Disposition: nem como nome de arquivo.ext") para evitar que o shell os dividaem argumentos separados.

Os seguintes cabeçalhos são armazenados como metadados do objeto e usados em solicitações futuras no objeto:


Cache-Control
Content-Disposition
Content-Encoding
Content-Language
Content-Type

Os seguintes cabeçalhos são usados para verificar a integridade dos dados:


Content-MD5

A gsutil também aceita cabeçalhos de metadados personalizados com um prefixo correspondente do provedor do Cloud Storage, como:


x-goog-meta-

Para URLs gs://, o cabeçalho de controle de cache é específico da API que está sendo usada. A API XML aceitará todos os cabeçalhos de controle de cache e os retornará durante os downloads de objetos. A API JSON menciona apenas os cabeçalhos de controle de cache público, privado, sem cache e max-age, podendo adicionar a própria diretiva de não transformação, mesmo que não tenha sido especificada. Consulte APIs de ajuda da gsutilpara mais informações sobre a interação da gsutil com APIs.

Consulte também gsutil help setmeta para saber como definir campos de metadados em objetos após o upload.

-i

Permite que você use as credenciais configuradas para personificar uma conta de serviço. Por exemplo:


gsutil -i "service-account@google.com" ls gs://pub

Essa configuração será ignorada pela XML API e S3. Consulte gsutil help cred para mais informações sobre como representar contas de serviço.

-m

Faz com que as operações compatíveis (acl ch, acl set, cp, mv, rm, RSync e setmeta) sejam executadas em paralelo. Isso pode melhorar significativamente o desempenho se você estiver executando operações em um grande número de arquivos por meio de uma conexão de rede razoavelmente rápida.

A gsutil executa a operação especificada usando uma combinação de multithreading e multiprocessamento, usando vários threads e processadores determinados pelos valores parallel_thread_count e parallel_process_count definidos no arquivo de configuração boto. Convém testar esses valores, já que os melhores valores podem variar com base em vários fatores, incluindo velocidade da rede, número de CPUs e memória disponível.

O uso da opção -m pode piorar seu desempenho se você estiver usando uma rede mais lenta, como as velocidades de rede típicas oferecidas por planos de rede domésticos não comerciais. Ele também pode piorar o desempenho de casos que realizam todas as operações localmente (por exemplo, gsutil RSync, em que os URLs de origem e de destino estão no disco local), porque podem "travam" o disco local.

Se uma operação de download ou upload que usa a transferência paralela falhar antes da conclusão de toda transferência (por exemplo, caindo após a transferência de 300 de 1000 arquivos), será necessário reiniciar toda a transferência.

Além disso, embora a maioria dos comandos falhem ao encontrar um erro quando a sinalização -m estiver desativada, todos os comandos continuarão a tentar todas as operações quando -m for ativado com vários threads ou processos e os o número de operações com falha, se houver, será informado como uma exceção no final da execução do comando;

-o Definir/substituir valores no valor de configuração do boto, no formato {section}: {name} = {value}, por exemplo, gsutil -o "Boto:proxy=host" ... Isso não passará a opção para testes de integração da gsutil. que são executados em um processo separado.
-q Faz com que a gsutil execute operações silenciosamente, ou seja, sem relatar indicadores de progresso de arquivos que estão sendo copiados ou removidos etc. Erros ainda são relatados. Essa opção pode ser útil para executar a gsutil de um cron job que registra a saída em um arquivo, para o qual as únicas informações desejadas no registro são falhas.
-u

Permite que você especifique um projeto de usuário a ser cobrado pela solicitação. Exemplo:


gsutil -u "bill-this-project" cp ...