Übergeordnete Befehlszeilenoptionen

Beschreibung

gsutil unterstützt separate Optionen für den übergeordneten gsutil-Befehl und die einzelnen Unterbefehle (z. B. cp, rm usw.). Die übergeordneten Optionen steuern das Verhalten von gsutil, das auf alle Befehle angewendet wird. Nehmen wir den folgenden Befehl als Beispiel:

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

Die Option "-m" gilt für gsutil und die Option "-p" für den cp-Unterbefehl.

Optionen

-D

Zeigt HTTP-Anfragen/-Header und zusätzliche Debugging-Informationen an, die beim Posten von Supportanfragen erforderlich sind, u. a. Stacktraces von Ausnahmen.

-DD Wie -D, plus HTTP-Upstream-Nutzlast.
-h

Ermöglicht die Angabe bestimmter HTTP-Header, z. B.:


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

Beachten Sie, dass Sie Header/Werte mit Leerzeichen in Anführungszeichen setzen müssen (z. B. "Content-Disposition: attachment; filename=filename.ext"), damit die Shell sie nicht in separate Argumente aufteilt.

Die folgenden Header werden als Objektmetadaten gespeichert und in zukünftigen Anfragen im Zusammenhang mit dem Objekt verwendet:


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

Mit den folgenden Headern wird die Datenintegrität geprüft:


Content-MD5

gsutil unterstützt auch benutzerdefinierte Metadatenheader mit einem übereinstimmenden Cloud Storage-Anbieterpräfix z. B.:


x-goog-meta-

Beachten Sie, dass bei gs://-URLs der Header Cache-Control für die verwendete API spezifisch ist. Die XML API akzeptiert alle Cache-Control-Header und gibt sie bei Objektdownloads zurück. Die JSON API berücksichtigt nur die Cache-Control-Header "public", "private", "no-cache" und "max-age". Möglicherweise wird auch ihre eigene no-transform-Anweisung hinzugefügt, selbst wenn dies nicht angegeben wurde. Weitere Informationen zur Interaktion von gsutil mit APIs finden Sie unter gsutil help apis.

Unter gsutil help setmeta erfahren Sie auch, wie Sie Metadatenfelder für Objekte festlegen können, nachdem sie hochgeladen wurden.

-i

Hiermit können Sie die konfigurierten Anmeldedaten verwenden, um die Identität eines Dienstkontos zu übertragen. Beispiel:


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

Beachten Sie, dass diese Einstellung von der XML API und von S3 ignoriert wird. Weitere Informationen zur Identitätsübertragung für Dienstkonten finden Sie unter gsutil help creds.

-m

Veranlasst, dass unterstützte Vorgänge (acl ch, acl set, cp, mv, rm, rsync und setmeta) parallel ausgeführt werden. Dies kann die Leistung erheblich verbessern, wenn Sie Vorgänge mit einer großen Anzahl an Dateien über eine relativ schnelle Netzwerkverbindung ausführen.

gsutil führt den angegebenen Vorgang mit einer Kombination aus Multi-Threading und Multi-Processing aus. Dabei wird eine Reihe von Threads und Prozessen verwendet, deren Anzahl durch die in der boto-Konfigurationsdatei festgelegten Werte für parallel_thread_count (Anzahl paralleler Threads) und parallel_process_count (Anzahl paralleler Prozesse) bestimmt werden. Sie können mit diesen Werten experimentieren, da die für Sie besten Werte auf Grundlage einer Reihe von Faktoren variieren können, u. a. Netzwerkgeschwindigkeit, Anzahl der CPUs und verfügbarer Arbeitsspeicher.

Wenn Sie die Option "-m" verwenden, kann sich die Leistung verschlechtern, falls Sie ein langsameres Netzwerk nutzen. Ein Beispiel dafür sind die typischen Netzwerkgeschwindigkeiten, die im Rahmen von nicht geschäftlichen Heimnetztarifen angeboten werden. Die Option "-m" kann aber auch zu einer schlechteren Leistung führen, wenn alle Vorgänge lokal ausgeführt werden, da Ihr lokales Laufwerk überlasten werden kann. Ein Beispiel hierfür ist "gsutil rsync", wenn sich sowohl die Quell- als auch die Ziel-URL auf dem lokalen Laufwerk befinden.

Wenn ein Download- oder Uploadvorgang mit paralleler Übertragung fehlschlägt, bevor die gesamte Übertragung abgeschlossen ist (z. B. nach der Übertragung von 300 von 1.000 Dateien), müssen Sie die gesamte Übertragung neu starten.

Die meisten Befehlen schlagen normalerweise bei Auftreten eines Fehlers fehl, wenn das Flag "-m" deaktiviert ist. Wenn die Option "-m" allerdings mit mehreren Threads oder Prozessen aktiviert ist, versuchen alle Befehle weiterhin alle Vorgänge auszuführen. Die Anzahl der fehlgeschlagenen Vorgänge (falls vorhanden) wird am Ende der Ausführung des Befehls als Ausnahme gemeldet.

-o Legt Werte im boto-Konfigurationswert fest bzw. überschreibt vorhandene Werte. Das Format ist <Abschnitt>:<Name>=<Wert>, z. B. gsutil -o "Boto:proxy=host". Dadurch wird die Option nicht an gsutil-Integrationstests übergeben, die in einem separaten Prozess ausgeführt werden.
-q Veranlasst, dass gsutil Vorgänge im Hintergrund ausführt, d. h., dass Fortschrittsindikatoren zum Kopieren oder Entfernen von Dateien usw. nicht gemeldet werden. Fehler werden weiterhin gemeldet. Diese Option kann nützlich sein, wenn Sie gsutil über einen Cronjob ausführen, der seine Ausgabe in eine Datei protokolliert, für die im Log nur Informationen zu Fehlern erwünscht sind.
-u

Ermöglicht die Angabe eines Nutzerprojekts, dem die Anfrage in Rechnung gestellt werden soll. Beispiel:


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