Auf dieser Seite wird gezeigt, wie Sie Objekte in bzw. zwischen Buckets in Cloud Storage kopieren, umbenennen und verschieben.
Obwohl einige Tools in Cloud Storage dafür sorgen, dass das Verschieben oder Umbenennen eines Objekts ein einzelner Vorgang ist, handelt es sich immer um einen Kopiervorgang gefolgt von einem Löschvorgang des ursprünglichen Objekts, da Objekte unveränderlich sind.
Objekt kopieren
So kopieren Sie ein Objekt in einen Ihrer Cloud Storage-Buckets:
Console
- Wechseln Sie in der Cloud Console zur Seite Cloud Storage-Buckets.
Klicken Sie in der Liste der Buckets auf den Bucket, der das Objekt enthält, das Sie kopieren möchten.
Die Seite Bucket-Details wird geöffnet und der Tab Objekte ist ausgewählt.
Wechseln Sie zu dem Objekt. Dieses befindet sich möglicherweise in einem Ordner.
Klicken Sie auf das Dreipunkt-Menü more_vert des Objekts.
Klicken Sie auf Kopieren.
Der Bereich Objekt kopieren wird angezeigt.
Geben Sie im Feld Ziel den Namen des Ziel-Buckets und den Namen des kopierten Objekts ein.
Sie können auch auf Durchsuchen klicken, um Ihr Ziel auszuwählen, aber die Optionen zum Durchsuchen sind auf Buckets im aktuellen Projekt beschränkt.
Klicken Sie auf Kopieren.
Unter Fehlerbehebung erfahren Sie, wie Sie detaillierte Fehlerinformationen zu fehlgeschlagenen Cloud Storage-Vorgängen in der Google Cloud Console abrufen.
Befehlszeile
Führen Sie den Befehl gcloud storage cp
aus:
gcloud storage cp gs://SOURCE_BUCKET_NAME/SOURCE_OBJECT_NAME gs://DESTINATION_BUCKET_NAME/NAME_OF_COPY
Wobei:
SOURCE_BUCKET_NAME
ist der Name des Buckets mit dem Objekt, das Sie kopieren möchten. Beispiel:my-bucket
.SOURCE_OBJECT_NAME
ist der Name des Objekts, das Sie kopieren möchten. Beispiel:pets/dog.png
.DESTINATION_BUCKET_NAME
ist der Name des Buckets, in den Sie das Objekt kopieren möchten. Beispiel:another-bucket
NAME_OF_COPY
ist der Name, den Sie der Kopie des Objekts geben möchten. Beispiel:shiba.png
.
Wenn der Vorgang erfolgreich war, sieht die Antwort in etwa so aus:
Copying gs://example-bucket/file.txt to gs://other-bucket/file-copy.txt Completed files 1/1 | 164.3kiB/164.3kiB
Clientbibliotheken
C++
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage C++ API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
C#
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage C# API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Go
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Go API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Java
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Java API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Node.js
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Node.js API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
PHP
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage PHP API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Python
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Python API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Ruby
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Ruby API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
REST APIs
JSON API
Die gcloud CLI installieren und initialisieren, um ein Zugriffstoken für den Header
Authorization
zu generieren.Verwenden Sie
cURL
, um die JSON API mit einerPOST
-Objektanfrage aufzurufen:curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Length: 0" \ "https://storage.googleapis.com/storage/v1/b/SOURCE_BUCKET_NAME/o/SOURCE_OBJECT_NAME/rewriteTo/b/DESTINATION_BUCKET_NAME/o/NAME_OF_COPY"
Wobei:
SOURCE_BUCKET_NAME
ist der Name des Buckets mit dem Objekt, das Sie kopieren möchten. Beispiel:my-bucket
SOURCE_OBJECT_NAME
ist der URL-codierte Name des Objekts, das Sie kopieren möchten. Beispiel:pets/dog.png
, URL-codiert alspets%2Fdog.png
.DESTINATION_BUCKET_NAME
ist der Name des Buckets, in den Sie das Objekt kopieren möchten. Beispiel:another-bucket
NAME_OF_COPY
ist der URL-codierte Name, den Sie der Kopie Ihres Objekts geben möchten. Beispiel:shiba.png
.
Da die
rewrite
-Methode einzelne Datenblöcke kopiert, können für Ihre Kopie mehrere Anfragen erforderlich sein, insbesondere bei großen Objekten.Die folgende Antwort auf eine
rewrite
-Anfrage zeigt beispielsweise an, dass Sie zusätzlicherewrite
-Anfragen senden müssen:{ "kind": "storage#rewriteResponse", "totalBytesRewritten": 1048576, "objectSize": 10000000000, "done": false, "rewriteToken": TOKEN_VALUE }
Verwenden Sie das
rewriteToken
in einer nachfolgenden Anfrage, um weitere Daten zu kopieren:curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Length: 0" \ -d '{"rewriteToken": "TOKEN_VALUE"}' \ "https://storage.googleapis.com/storage/v1/b/SOURCE_BUCKET_NAME/o/SOURCE_OBJECT_NAME/rewriteTo/b/DESTINATION_BUCKET_NAME/o/NAME_OF_COPY"
Wobei:
TOKEN_VALUE
ist der in der vorherigen Anfrage zurückgegebenerewriteToken
-Wert.- Alle anderen Werte stimmen mit den Werten aus der vorherigen Anfrage überein.
Wenn das Objekt vollständig kopiert wurde, ist in der letzten Antwort das Attribut
done
auftrue
gesetzt und kein AttributrewriteToken
vorhanden. Außerdem sind die Metadaten der Kopie im Attributresource
enthalten.{ "kind": "storage#rewriteResponse", "totalBytesRewritten": 10000000000, "objectSize": 10000000000, "done": true, "resource": objects Resource }
XML API
Die gcloud CLI installieren und initialisieren, um ein Zugriffstoken für den Header
Authorization
zu generieren.Verwenden Sie
cURL
, um die XML API mit einerPUT
-Objektanfrage aufzurufen:curl -X PUT \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "x-goog-copy-source: SOURCE_BUCKET_NAME/SOURCE_OBJECT_NAME" \ "https://storage.googleapis.com/DESTINATION_BUCKET_NAME/NAME_OF_COPY"
Wobei:
SOURCE_BUCKET_NAME
ist der Name des Buckets mit dem Objekt, das Sie kopieren möchten. Beispiel:my-bucket
SOURCE_OBJECT_NAME
ist der Name des Objekts, das Sie kopieren möchten. Beispiel:pets/dog.png
.DESTINATION_BUCKET_NAME
ist der Name des Buckets, in den Sie das Objekt kopieren möchten. Beispiel:another-bucket
NAME_OF_COPY
ist der URL-codierte Name, den Sie der Kopie Ihres Objekts geben möchten. Beispiel:shiba.png
.
Objekte verschieben oder umbenennen
So verschieben Sie ein Objekt in Cloud Storage zwischen Buckets oder benennen ein Objekt in einem Bucket um:
Console
- Wechseln Sie in der Cloud Console zur Seite Cloud Storage-Buckets.
Klicken Sie in der Liste der Buckets auf den Namen des Buckets mit dem Objekt, das Sie verschieben oder umbenennen möchten.
Die Seite Bucket-Details wird geöffnet und der Tab Objekte ist ausgewählt.
Wechseln Sie zu dem Objekt. Dieses befindet sich möglicherweise in einem Ordner.
Klicken Sie auf das Dreipunkt-Menü more_vert des Objekts.
Wenn Sie dem Objekt einen neuen Namen im selben Bucket geben möchten, klicken Sie auf Umbenennen.
Geben Sie im eingeblendeten Fenster einen neuen Namen für das Objekt ein.
Klicken Sie auf Umbenennen.
Wenn Sie das Objekt in einen anderen Bucket verschieben möchten, klicken Sie auf Verschieben.
Klicken Sie im eingeblendeten Fenster auf Durchsuchen.
Wählen Sie das Ziel für das Objekt aus, das Sie verschieben möchten.
Klicken Sie auf Auswählen.
Klicken Sie auf Verschieben.
Unter Fehlerbehebung erfahren Sie, wie Sie detaillierte Fehlerinformationen zu fehlgeschlagenen Cloud Storage-Vorgängen in der Google Cloud Console abrufen.
Befehlszeile
Führen Sie den Befehl gcloud storage mv
aus:
gcloud storage mv gs://SOURCE_BUCKET_NAME/SOURCE_OBJECT_NAME gs://DESTINATION_BUCKET_NAME/DESTINATION_OBJECT_NAME
Wobei:
SOURCE_BUCKET_NAME
ist der Name des Buckets mit dem Objekt, das Sie verschieben oder umbenennen möchten. Beispiel:my-bucket
SOURCE_OBJECT_NAME
ist der Name des Objekts, das Sie verschieben oder umbenennen möchten. Beispiel:pets/dog.png
.DESTINATION_BUCKET_NAME
ist der Name des Buckets, in dem das verschobene oder umbenannte Objekt gespeichert wird. Beispiel:another-bucket
DESTINATION_OBJECT_NAME
ist der Name, den das Objekt nach dem Verschieben oder Umbenennen haben soll. Beispiel:shiba.png
Wenn der Vorgang erfolgreich war, sieht die Antwort in etwa so aus:
Copying gs://example-bucket/old-file.txt to gs://new-bucket/new-file.txt Removing gs://example-bucket/old-file.txt... Completed files 1/1 | 164.3kiB/164.3kiB
Clientbibliotheken
C++
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage C++ API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
C#
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage C# API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Go
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Go API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Java
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Java API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Node.js
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Node.js API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
PHP
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage PHP API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Python
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Python API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Ruby
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Ruby API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
REST APIs
JSON API
Wenn Sie ein Objekt direkt mit der JSON API verschieben oder umbenennen möchten, erstellen Sie eine Kopie des Objekts mit den gewünschten Attributen und löschen Sie anschließend das ursprüngliche Objekt.
XML API
Wenn Sie ein Objekt direkt mit der XML API verschieben oder umbenennen möchten, erstellen Sie eine Kopie des Objekts mit den gewünschten Attributen und löschen Sie anschließend das ursprüngliche Objekt.
Wir empfehlen die Verwendung von Storage Transfer Service, um mehr als 1 TB Daten zwischen Buckets zu verschieben.
Nächste Schritte
- Speicherklasse eines Objekts ändern
- Metadaten eines Objekts bearbeiten
- Objekte und Buckets veröffentlichen
- Weitere Informationen zu den Benennungsanforderungen für Objekte
- Anfragevorbedingungen verwenden, um Race-Bedingungen zu verhindern