Options de ligne de commande de premier niveau

Description

gsutil accepte différentes options pour la commande gsutil de premier niveau et les sous-commandes individuelles (cp, rm, etc.). Les options de premier niveau contrôlent le comportement de gsutil qui s'applique à toutes les commandes. Prenons l'exemple de la commande suivante :

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

L'option -m s'applique à gsutil, tandis que l'option -p s'applique à la sous-commande cp.

Options

-D

Affiche les requêtes/en-têtes HTTP et d'autres informations de débogage nécessaires lors de la publication de demandes d'assistance, y compris les traces de la pile d'exception.

-DD Identique à -D, avec la charge utile HTTP en amont.
-h

Permet de spécifier certains en-têtes HTTP. Exemple :


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

Notez que vous devez mettre les en-têtes/valeurs contenant des espaces entre guillemets (par exemple, "Content-Disposition: attachment; filename=filename.ext") pour éviter que l'interface système ne les interprète en arguments distincts.

Les en-têtes suivants sont stockés en tant que métadonnées d'objets et sont utilisés dans les requêtes ultérieures sur l'objet :


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

Les en-têtes suivants permettent de vérifier l'intégrité des données :


Content-MD5

gsutil accepte également les en-têtes de métadonnées personnalisés avec un préfixe de fournisseur Cloud Storage correspondant, tel que le suivant :


x-goog-meta-

Notez que l'en-tête Cache Control des URL gs:// est spécifique à l'API utilisée. L'API XML accepte tous les en-têtes de contrôle du cache et les renvoie lors des téléchargements d'objets. L'API JSON ne respecte que les en-têtes de contrôle de cache public, private, no-cache et max-age, et peut ajouter sa propre directive de non-transformation, même si elle n'est pas spécifiée. Pour en savoir plus sur l'interaction de gsutil avec les API, consultez la page sur gsutil help apis.

Consultez également la page consacrée à gsutil help setmeta pour savoir comment définir des champs de métadonnées sur des objets après leur importation.

-i

Permet d'usurper l'identité d'un compte de service à l'aide des identifiants configurés. Exemple :


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

Notez que ce paramètre est ignoré par l'API XML et S3. Pour en savoir plus sur l'usurpation d'identité des comptes de service, consultez la page sur gsutil help cred.

-m

Entraîne l'exécution d'opérations acceptées (acl ch, acl set, cp, mv, rm, rsync et setmeta) en parallèle. Cela permet d'améliorer considérablement les performances si vous effectuez des opérations sur un grand nombre de fichiers via une connexion réseau relativement rapide.

gsutil effectue l'opération spécifiée en combinant le multithread et le mutitraitement, à l'aide de plusieurs threads et processeurs définis par les valeurs parallel_thread_count et parallel_process_count indiquées dans le fichier de configuration boto. Vous pouvez tester ces valeurs, car les valeurs les plus appropriées peuvent varier en fonction d'un certain nombre de facteurs, y compris le débit réseau, le nombre de processeurs et la mémoire disponible.

L'utilisation de l'option -m peut nuire à vos performances si vous utilisez un réseau plus lent, tel que les débits réseau habituels proposés par les forfaits de réseau domestique non professionnels. Cela peut également affecter les performances si vous effectuez toutes les opérations en local (par exemple, la commande gsutil rsync, dans laquelle les URL source et de destination se trouvent sur le disque local), car l'option peut utiliser votre disque local de manière excessive.

Si une opération de téléchargement ou d'importation utilisant le transfert parallèle échoue avant la fin du transfert (par exemple, après le transfert de 300 fichiers sur 1 000), vous devez relancer le transfert.

En outre, bien que la plupart des commandes échouent généralement lorsque l'option -m est désactivée, toutes les commandes continuent à lancer les opérations lorsque -m est activé avec plusieurs threads ou processus, et le nombre d'opérations ayant échoué (le cas échéant) est signalé comme une exception à la fin de l'exécution de la commande.

-o Définissez ou remplacez les valeurs du fichier de configuration boto, au format <section>:<nom>=<valeur>, tel que gsutil -o "Boto:proxy=host". [...]. Cela permet de ne pas transmettre l'option aux tests d'intégration gsutil qui s'exécutent dans un processus distinct.
-q Permet à gsutil d'effectuer des opérations en mode silencieux, c'est-à-dire sans signaler les indicateurs de progression des fichiers copiés ou supprimés. Les erreurs sont toujours signalées. Cette option peut être utile pour exécuter gsutil à partir d'une tâche Cron qui enregistre le résultat dans un fichier dont les seules informations souhaitées sont les échecs.
-u

Permet de spécifier un projet utilisateur à facturer pour la requête. Exemple :


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