Opciones de línea de comandos de nivel superior

Descripción

gsutil admite opciones separadas para el comando de gsutil de nivel superior y los subcomandos individuales (como cp, rm, etc.). Las opciones de nivel superior controlan el comportamiento de gsutil que se aplica en los comandos. Por ejemplo:

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

En el comando anterior, la opción -m se aplica a gsutil, mientras que la opción -p se aplica al subcomando cp.

Opciones

-D

Muestra encabezados y solicitudes HTTP, y la información de depuración adicional necesaria cuando se publican las solicitudes de asistencia, incluidos los seguimientos de pila de excepciones.

-DD Igual que -D, más la carga útil HTTP ascendente.
-h

Te permite especificar ciertos encabezados HTTP, por ejemplo:


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

Ten en cuenta que debes citar los encabezados o valores que contienen espacios (como “Content-Disposition: attachment; filename=filename.ext”), para evitar que la shell los divida en argumentos separados.

Los siguientes encabezados se almacenan como metadatos de objeto y se usan en solicitudes futuras del objeto:


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

Los siguientes encabezados se usan para verificar la integridad de los datos:


Content-MD5

gsutil también admite encabezados de metadatos personalizados con un prefijo de proveedor de Cloud Storage coincidente, como los siguientes:


x-goog-meta-

Ten en cuenta que, para las URL gs://, el encabezado de control de caché es específico de la API que se usa. La API de XML aceptará los encabezados de control de caché y los mostrará durante las descargas de objetos. La API de JSON solo respeta los encabezados de control de caché públicos, privados, sin caché y max-age. También puede agregar su propia directiva no-transform, incluso si no se especificó. Consulta las gsutil help y gsutil apis para obtener más información sobre la interacción de gsutil con las API.

Consulta también gsutil help y gsutil setmeta para conocer la capacidad de establecer campos de metadatos en los objetos después de subirlos.

-i

Te permite usar las credenciales configuradas para actuar en nombre de una cuenta de servicio, por ejemplo:


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

Ten en cuenta que la API de XML y de S3 ignorarán esta configuración. Consulta gsutil help y gsutil creds para obtener más información sobre cómo actuar en nombre de cuentas de servicio.

-m

Hace que las operaciones admitidas (acl ch, acl set, cp, mv, rm, rsync y setmeta) se ejecuten en paralelo. Esto puede mejorar de manera significativa el rendimiento si realizas operaciones en una gran cantidad de archivos a través de una conexión de red bastante rápida.

gsutil realiza la operación especificada mediante una combinación de varios subprocesos y varios procesamientos, con una cantidad de subprocesos y procesadores determinados por los valores parallel_thread_count y parallel_process_count establecidos en el archivo de configuración boto. Te recomendamos experimentar con estos valores, ya que los mejores valores pueden variar por muchos factores, como la velocidad de la red, la cantidad de CPU y la memoria disponible.

Usar la opción -m puede empeorar tu rendimiento si usas una red más lenta, como las velocidades de red típicas que ofrecen los planes de red doméstica no comerciales. También puede empeorar el rendimiento de los casos en los que se realizan todas las operaciones de manera local (p. ej., gsutil rsync, en el que las URL de origen y de destino se encuentran en el disco local), ya que se puede generar “hiperpaginación” en tu disco local.

Si una operación de carga o descarga mediante transferencia paralela falla antes de que se complete toda la transferencia (p. ej., una falla después de transferir 300 archivos de 1,000), deberás reiniciar toda la transferencia.

Además, aunque la mayoría de los comandos suelen fallar si encuentran un error cuando la marca -m está inhabilitada, todos los comandos continuarán probando las operaciones cuando -m esté habilitada con varios subprocesos o procesos, y la cantidad de operaciones con errores (si existen) se informará como una excepción al final de la ejecución del comando.

-o Establece o anula valores del valor de configuración boto, en el formato <section>:<name>=<value>, p. ej., gsutil -o “Boto:proxy=host”… Esto no pasará la opción a las pruebas de integración de gsutil, que se ejecutan en un proceso separado.
-q Hace que gsutil realice operaciones de forma silenciosa, es decir, sin informar que los indicadores de progreso de los archivos se copian o quitan, etc. Aún se informan los errores. Esta opción puede ser útil para ejecutar gsutil desde un trabajo cron que registra su resultado en un archivo, en el que la única información deseada en el registro son fallas.
-u

Te permite especificar el proyecto de usuario que se facturará para la solicitud. Por ejemplo:


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