Amazon S3 S3-Beispiele mit AWS CLI - AWS Command Line Interface

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Amazon S3 S3-Beispiele mit AWS CLI

Die folgenden Codebeispiele zeigen Ihnen, wie Sie mithilfe von Amazon S3 Aktionen ausführen und allgemeine Szenarien implementieren. AWS Command Line Interface

Aktionen sind Codeauszüge aus größeren Programmen und müssen im Kontext ausgeführt werden. Aktionen zeigen Ihnen zwar, wie Sie einzelne Servicefunktionen aufrufen, aber Sie können Aktionen im Kontext der zugehörigen Szenarien sehen.

Jedes Beispiel enthält einen Link zum vollständigen Quellcode, in dem Sie Anweisungen zum Einrichten und Ausführen des Codes im Kontext finden.

Themen

Aktionen

Das folgende Codebeispiel zeigt die Verwendungabort-multipart-upload.

AWS CLI

Um den angegebenen mehrteiligen Upload abzubrechen

Mit dem folgenden abort-multipart-upload Befehl wird ein mehrteiliger Upload für den Schlüssel multipart/01 im Bucket abgebrochen. my-bucket

aws s3api abort-multipart-upload \ --bucket my-bucket \ --key multipart/01 \ --upload-id dfRtDYU0WWCCcH43C3WFbkRONycyCpTJJvxu2i5GYkZljF.Yxwh6XG7WfS2vC4to6HiV6Yjlx.cph0gtNBtJ8P3URCSbB7rjxI5iEwVDmgaXZOGgkk5nVTW16HOQ5l0R

Die für diesen Befehl benötigte Upload-ID wird von ausgegeben create-multipart-upload und kann auch mit abgerufen werden. list-multipart-uploads

Das folgende Codebeispiel zeigt, wie man es benutztcomplete-multipart-upload.

AWS CLI

Mit dem folgenden Befehl wird ein mehrteiliger Upload für den Schlüssel multipart/01 im Bucket my-bucket abgeschlossen:

aws s3api complete-multipart-upload --multipart-upload file://mpustruct --bucket my-bucket --key 'multipart/01' --upload-id dfRtDYU0WWCCcH43C3WFbkRONycyCpTJJvxu2i5GYkZljF.Yxwh6XG7WfS2vC4to6HiV6Yjlx.cph0gtNBtJ8P3URCSbB7rjxI5iEwVDmgaXZOGgkk5nVTW16HOQ5l0R

Die für diesen Befehl benötigte Upload-ID wird von ausgegeben create-multipart-upload und kann auch mit list-multipart-uploads abgerufen werden.

Die mehrteilige Upload-Option im obigen Befehl hat eine JSON Struktur, die die Teile des mehrteiligen Uploads beschreibt, die wieder zur vollständigen Datei zusammengesetzt werden sollen. In diesem Beispiel wird das file:// Präfix verwendet, um die JSON Struktur aus einer Datei im lokalen Ordner namens zu laden. mpustruct

mpustruct:

{ "Parts": [ { "ETag": "e868e0f4719e394144ef36531ee6824c", "PartNumber": 1 }, { "ETag": "6bb2b12753d66fe86da4998aa33fffb0", "PartNumber": 2 }, { "ETag": "d0a0112e841abec9c9ec83406f0159c8", "PartNumber": 3 } ] }

Der ETag Wert für jeden Teil, der hochgeladen wird, wird jedes Mal ausgegeben, wenn Sie ein Teil mit dem upload-part Befehl hochladen. Er kann auch durch Aufrufen abgerufen list-parts oder berechnet werden, indem die MD5 Prüfsumme jedes Teils genommen wird.

Ausgabe:

{ "ETag": "\"3944a9f7a4faab7f78788ff6210f63f0-3\"", "Bucket": "my-bucket", "Location": "https://my-bucket.s3.amazonaws.com/multipart%2F01", "Key": "multipart/01" }

Das folgende Codebeispiel zeigt, wie man es benutztcopy-object.

AWS CLI

Der folgende Befehl kopiert ein Objekt von bucket-1 nachbucket-2:

aws s3api copy-object --copy-source bucket-1/test.txt --key test.txt --bucket bucket-2

Ausgabe:

{ "CopyObjectResult": { "LastModified": "2015-11-10T01:07:25.000Z", "ETag": "\"589c8b79c230a6ecd5a7e1d040a9a030\"" }, "VersionId": "YdnYvTCVDqRRFA.NFJjy36p0hxifMlkA" }
  • APIEinzelheiten finden Sie CopyObjectin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie man es benutztcp.

AWS CLI

Beispiel 1: Kopieren einer lokalen Datei nach S3

Der folgende cp Befehl kopiert eine einzelne Datei in einen angegebenen Bucket und Schlüssel:

aws s3 cp test.txt s3://mybucket/test2.txt

Ausgabe:

upload: test.txt to s3://mybucket/test2.txt

Beispiel 2: Kopieren einer lokalen Datei mit einem Ablaufdatum nach S3

Der folgende cp Befehl kopiert eine einzelne Datei in einen angegebenen Bucket und Schlüssel, der zum angegebenen ISO 8601-Zeitstempel abläuft:

aws s3 cp test.txt s3://mybucket/test2.txt \ --expires 2014-10-01T20:30:00Z

Ausgabe:

upload: test.txt to s3://mybucket/test2.txt

Beispiel 3: Kopieren einer Datei von S3 nach S3

Der folgende cp Befehl kopiert ein einzelnes S3-Objekt in einen angegebenen Bucket und Schlüssel:

aws s3 cp s3://mybucket/test.txt s3://mybucket/test2.txt

Ausgabe:

copy: s3://mybucket/test.txt to s3://mybucket/test2.txt

Beispiel 4: Kopieren eines S3-Objekts in eine lokale Datei

Mit dem folgenden cp Befehl wird ein einzelnes Objekt lokal in eine angegebene Datei kopiert:

aws s3 cp s3://mybucket/test.txt test2.txt

Ausgabe:

download: s3://mybucket/test.txt to test2.txt

Beispiel 5: Kopieren eines S3-Objekts von einem Bucket in einen anderen

Der folgende cp Befehl kopiert ein einzelnes Objekt in einen angegebenen Bucket, wobei der ursprüngliche Name beibehalten wird:

aws s3 cp s3://mybucket/test.txt s3://mybucket2/

Ausgabe:

copy: s3://mybucket/test.txt to s3://mybucket2/test.txt

Beispiel 6: Rekursives Kopieren von S3-Objekten in ein lokales Verzeichnis

Wenn der folgende cp Befehl zusammen mit dem Parameter übergeben wird--recursive, kopiert er rekursiv alle Objekte unter einem bestimmten Präfix und Bucket in ein bestimmtes Verzeichnis. In diesem Beispiel mybucket enthält der Bucket die Objekte test1.txt undtest2.txt:

aws s3 cp s3://mybucket . \ --recursive

Ausgabe:

download: s3://mybucket/test1.txt to test1.txt download: s3://mybucket/test2.txt to test2.txt

Beispiel 7: Rekursives Kopieren lokaler Dateien nach S3

Wenn der folgende cp Befehl zusammen mit dem Parameter übergeben wird--recursive, kopiert er rekursiv alle Dateien in einem angegebenen Verzeichnis in einen bestimmten Bucket und ein bestimmtes Präfix, wobei einige Dateien mithilfe eines --exclude Parameters ausgeschlossen werden. In diesem Beispiel myDir enthält das Verzeichnis die Dateien test1.txt undtest2.jpg:

aws s3 cp myDir s3://mybucket/ \ --recursive \ --exclude "*.jpg"

Ausgabe:

upload: myDir/test1.txt to s3://mybucket/test1.txt

Beispiel 8: Rekursives Kopieren von S3-Objekten in einen anderen Bucket

Wenn der folgende cp Befehl zusammen mit dem Parameter übergeben wird--recursive, kopiert er rekursiv alle Objekte unter einem angegebenen Bucket in einen anderen Bucket und schließt dabei einige Objekte mithilfe eines --exclude Parameters aus. In diesem Beispiel mybucket enthält der Bucket die Objekte test1.txt undanother/test1.txt:

aws s3 cp s3://mybucket/ s3://mybucket2/ \ --recursive \ --exclude "another/*"

Ausgabe:

copy: s3://mybucket/test1.txt to s3://mybucket2/test1.txt

Sie können --include Optionen kombinieren--exclude, um nur Objekte zu kopieren, die einem Muster entsprechen, alle anderen ausgenommen:

aws s3 cp s3://mybucket/logs/ s3://mybucket2/logs/ \ --recursive \ --exclude "*" \ --include "*.log"

Ausgabe:

copy: s3://mybucket/logs/test/test.log to s3://mybucket2/logs/test/test.log copy: s3://mybucket/logs/test3.log to s3://mybucket2/logs/test3.log

Beispiel 9: Einstellung der Zugriffskontrollliste (ACL) beim Kopieren eines S3-Objekts

Der folgende cp Befehl kopiert ein einzelnes Objekt in einen angegebenen Bucket und Schlüssel und setzt dabei ACL aufpublic-read-write:

aws s3 cp s3://mybucket/test.txt s3://mybucket/test2.txt \ --acl public-read-write

Ausgabe:

copy: s3://mybucket/test.txt to s3://mybucket/test2.txt

Beachten Sie, dass Sie, wenn Sie die --acl Option verwenden, sicherstellen müssen, dass alle zugehörigen IAM Richtlinien die "s3:PutObjectAcl" Aktion enthalten:

aws iam get-user-policy \ --user-name myuser \ --policy-name mypolicy

Ausgabe:

{ "UserName": "myuser", "PolicyName": "mypolicy", "PolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Action": [ "s3:PutObject", "s3:PutObjectAcl" ], "Resource": [ "arn:aws:s3:::mybucket/*" ], "Effect": "Allow", "Sid": "Stmt1234567891234" } ] } }

Beispiel 10: Erteilen von Berechtigungen für ein S3-Objekt

Der folgende cp Befehl veranschaulicht die Verwendung der --grants Option, um allen Benutzern, die durch ihre Canonical ID identifiziert werden, Lesezugriff zu gewähren URI und einem bestimmten Benutzer, der anhand seiner Canonical ID identifiziert wird, Vollzugriff zu gewähren:

aws s3 cp file.txt s3://mybucket/ --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers full=id=79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be

Ausgabe:

upload: file.txt to s3://mybucket/file.txt

Beispiel 11: Einen lokalen Dateistream auf S3 hochladen

PowerShell kann die Kodierung der über die Pipeline weitergeleiteten Eingaben ändern oder eine CRLF hinzufügen.

Der folgende cp Befehl lädt einen lokalen Dateistream von der Standardeingabe in einen bestimmten Bucket und Schlüssel hoch:

aws s3 cp - s3://mybucket/stream.txt

Beispiel 12: Hochladen eines lokalen Dateistreams, der größer als 50 GB ist, auf S3

Mit dem folgenden cp Befehl wird ein 51 GB großer lokaler Dateistream von der Standardeingabe in einen angegebenen Bucket und Schlüssel hochgeladen. Die --expected-size Option muss angegeben werden, andernfalls kann der Upload fehlschlagen, wenn die standardmäßige Teilelimit von 10.000 erreicht wird:

aws s3 cp - s3://mybucket/stream.txt --expected-size 54760833024

Beispiel 13: Ein S3-Objekt als lokalen Dateistream herunterladen

PowerShell kann die Kodierung der Ausgabe ändern oder eine der über die CRLF Pipeline oder Umleitung weitergeleiteten Ausgabe hinzufügen.

Mit dem folgenden cp Befehl wird ein S3-Objekt lokal als Stream in die Standardausgabe heruntergeladen. Das Herunterladen als Stream ist derzeit nicht mit dem --recursive Parameter kompatibel:

aws s3 cp s3://mybucket/stream.txt -

Beispiel 14: Upload auf einen S3-Zugangspunkt

Der folgende cp Befehl lädt eine einzelne Datei (mydoc.txt) auf den Access Point (myaccesspoint) am Schlüssel (mykey) hoch:

aws s3 cp mydoc.txt s3://arn:aws:s3:us-west-2:123456789012:accesspoint/myaccesspoint/mykey

Ausgabe:

upload: mydoc.txt to s3://arn:aws:s3:us-west-2:123456789012:accesspoint/myaccesspoint/mykey

Beispiel 15: Herunterladen von einem S3-Zugangspunkt

Der folgende cp Befehl lädt ein einzelnes Objekt (mykey) vom Access Point (myaccesspoint) in die lokale Datei (mydoc.txt) herunter:

aws s3 cp s3://arn:aws:s3:us-west-2:123456789012:accesspoint/myaccesspoint/mykey mydoc.txt

Ausgabe:

download: s3://arn:aws:s3:us-west-2:123456789012:accesspoint/myaccesspoint/mykey to mydoc.txt
  • APIEinzelheiten finden Sie unter Cp in der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie man es benutztcreate-bucket.

AWS CLI

Beispiel 1: Um einen Bucket zu erstellen

Im folgenden create-bucket Beispiel wird ein Bucket mit dem Namen erstelltmy-bucket:

aws s3api create-bucket \ --bucket my-bucket \ --region us-east-1

Ausgabe:

{ "Location": "/my-bucket" }

Weitere Informationen finden Sie unter Erstellen eines Buckets im Amazon S3 S3-Benutzerhandbuch.

Beispiel 2: Um einen Bucket zu erstellen, bei dem der Besitzer erzwungen wird

Im folgenden create-bucket Beispiel wird ein Bucket mit dem Namen erstellt, der my-bucket die Einstellung Bucket Owner erforced für S3 Object Ownership verwendet.

aws s3api create-bucket \ --bucket my-bucket \ --region us-east-1 \ --object-ownership BucketOwnerEnforced

Ausgabe:

{ "Location": "/my-bucket" }

Weitere Informationen finden Sie unter Kontrolle des Besitzes von Objekten und Deaktivierung ACLs im Amazon S3 S3-Benutzerhandbuch.

Beispiel 3: Um einen Bucket außerhalb der Region ``us-east-1`` zu erstellen

Im folgenden create-bucket Beispiel wird ein Bucket mit dem Namen der Region erstellt. my-bucket eu-west-1 Für Regionen außerhalb von us-east-1 müssen die entsprechenden LocationConstraint Felder angegeben werden, um den Bucket in der gewünschten Region zu erstellen.

aws s3api create-bucket \ --bucket my-bucket \ --region eu-west-1 \ --create-bucket-configuration LocationConstraint=eu-west-1

Ausgabe:

{ "Location": "http://my-bucket.s3.amazonaws.com/" }

Weitere Informationen finden Sie unter Erstellen eines Buckets im Amazon S3 S3-Benutzerhandbuch.

  • APIEinzelheiten finden Sie CreateBucketin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie man es benutztcreate-multipart-upload.

AWS CLI

Der folgende Befehl erstellt einen mehrteiligen Upload im Bucket my-bucket mit dem Schlüsselmultipart/01:

aws s3api create-multipart-upload --bucket my-bucket --key 'multipart/01'

Ausgabe:

{ "Bucket": "my-bucket", "UploadId": "dfRtDYU0WWCCcH43C3WFbkRONycyCpTJJvxu2i5GYkZljF.Yxwh6XG7WfS2vC4to6HiV6Yjlx.cph0gtNBtJ8P3URCSbB7rjxI5iEwVDmgaXZOGgkk5nVTW16HOQ5l0R", "Key": "multipart/01" }

Die fertige Datei wird 01 in einem Ordner namens multipart im Bucket my-bucket benannt. Speichern Sie die Upload-ID, den Schlüssel und den Bucket-Namen zur Verwendung mit dem upload-part Befehl.

Das folgende Codebeispiel zeigt, wie man es benutztdelete-bucket-analytics-configuration.

AWS CLI

Um eine Analytics-Konfiguration für einen Bucket zu löschen

Im folgenden delete-bucket-analytics-configuration Beispiel wird die Analytics-Konfiguration für den angegebenen Bucket und die angegebene ID entfernt.

aws s3api delete-bucket-analytics-configuration \ --bucket my-bucket \ --id 1

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Das folgende Codebeispiel zeigt, wie man es benutztdelete-bucket-cors.

AWS CLI

Der folgende Befehl löscht eine Cross-Origin-Konfiguration für die gemeinsame Nutzung von Ressourcen aus einem Bucket mit dem Namen: my-bucket

aws s3api delete-bucket-cors --bucket my-bucket

Das folgende Codebeispiel zeigt, wie man es benutztdelete-bucket-encryption.

AWS CLI

Um die serverseitige Verschlüsselungskonfiguration eines Buckets zu löschen

Im folgenden delete-bucket-encryption Beispiel wird die serverseitige Verschlüsselungskonfiguration des angegebenen Buckets gelöscht.

aws s3api delete-bucket-encryption \ --bucket my-bucket

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Das folgende Codebeispiel zeigt, wie man es benutztdelete-bucket-intelligent-tiering-configuration.

AWS CLI

Um eine S3 Intelligent-Tiering-Konfiguration aus einem Bucket zu entfernen

Im folgenden delete-bucket-intelligent-tiering-configuration Beispiel wird eine S3 Intelligent-Tiering-Konfiguration mit dem Namen, aus einem Bucket entfernt. ExampleConfig

aws s3api delete-bucket-intelligent-tiering-configuration \ --bucket DOC-EXAMPLE-BUCKET \ --id ExampleConfig

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Verwenden von S3 Intelligent-Tiering im Amazon S3 S3-Benutzerhandbuch.

Das folgende Codebeispiel zeigt, wie man es benutztdelete-bucket-inventory-configuration.

AWS CLI

Um die Inventarkonfiguration eines Buckets zu löschen

Im folgenden delete-bucket-inventory-configuration Beispiel wird die Inventarkonfiguration mit der ID 1 für den angegebenen Bucket gelöscht.

aws s3api delete-bucket-inventory-configuration \ --bucket my-bucket \ --id 1

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Das folgende Codebeispiel zeigt, wie man es benutztdelete-bucket-lifecycle.

AWS CLI

Der folgende Befehl löscht eine Lebenszykluskonfiguration aus einem Bucket mit dem Namenmy-bucket:

aws s3api delete-bucket-lifecycle --bucket my-bucket

Das folgende Codebeispiel zeigt, wie man es benutztdelete-bucket-metrics-configuration.

AWS CLI

Um eine Metrikkonfiguration für einen Bucket zu löschen

Im folgenden delete-bucket-metrics-configuration Beispiel wird die Metrikkonfiguration für den angegebenen Bucket und die angegebene ID entfernt.

aws s3api delete-bucket-metrics-configuration \ --bucket my-bucket \ --id 123

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Das folgende Codebeispiel zeigt, wie man es benutztdelete-bucket-ownership-controls.

AWS CLI

Um die Bucket-Besitzeinstellungen eines Buckets zu entfernen

Im folgenden delete-bucket-ownership-controls Beispiel werden die Einstellungen für den Bucket-Besitz eines Buckets entfernt.

aws s3api delete-bucket-ownership-controls \ --bucket DOC-EXAMPLE-BUCKET

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Objektbesitz für einen vorhandenen Bucket festlegen im Amazon S3 S3-Benutzerhandbuch.

Das folgende Codebeispiel zeigt, wie man es benutztdelete-bucket-policy.

AWS CLI

Der folgende Befehl löscht eine Bucket-Richtlinie aus einem Bucket mit dem Namenmy-bucket:

aws s3api delete-bucket-policy --bucket my-bucket

Das folgende Codebeispiel zeigt, wie man es benutztdelete-bucket-replication.

AWS CLI

Der folgende Befehl löscht eine Replikationskonfiguration aus einem Bucket mit dem Namenmy-bucket:

aws s3api delete-bucket-replication --bucket my-bucket

Das folgende Codebeispiel zeigt, wie man es benutztdelete-bucket-tagging.

AWS CLI

Der folgende Befehl löscht eine Tagging-Konfiguration aus einem Bucket mit dem Namen: my-bucket

aws s3api delete-bucket-tagging --bucket my-bucket

Das folgende Codebeispiel zeigt, wie man es benutztdelete-bucket-website.

AWS CLI

Der folgende Befehl löscht eine Website-Konfiguration aus einem Bucket mit dem Namenmy-bucket:

aws s3api delete-bucket-website --bucket my-bucket

Das folgende Codebeispiel zeigt, wie man es benutztdelete-bucket.

AWS CLI

Der folgende Befehl löscht einen Bucket mit dem Namenmy-bucket:

aws s3api delete-bucket --bucket my-bucket --region us-east-1
  • APIEinzelheiten finden Sie DeleteBucketin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie man es benutztdelete-object-tagging.

AWS CLI

Um die Tag-Sets eines Objekts zu löschen

Im folgenden delete-object-tagging Beispiel wird das Tag mit dem angegebenen Schlüssel aus dem Objekt doc1.rtf gelöscht.

aws s3api delete-object-tagging \ --bucket my-bucket \ --key doc1.rtf

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Das folgende Codebeispiel zeigt, wie man es benutztdelete-object.

AWS CLI

Der folgende Befehl löscht ein Objekt mit dem Namen test.txt aus einem Bucket mit dem Namenmy-bucket:

aws s3api delete-object --bucket my-bucket --key test.txt

Wenn die Bucket-Versionierung aktiviert ist, enthält die Ausgabe die Versions-ID der Löschmarkierung:

{ "VersionId": "9_gKg5vG56F.TTEUdwkxGpJ3tNDlWlGq", "DeleteMarker": true }

Weitere Informationen zum Löschen von Objekten finden Sie unter Objekte löschen im Amazon S3 Developer Guide.

  • APIEinzelheiten finden Sie DeleteObjectin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie man es benutztdelete-objects.

AWS CLI

Der folgende Befehl löscht ein Objekt aus einem Bucket mit dem Namenmy-bucket:

aws s3api delete-objects --bucket my-bucket --delete file://delete.json

delete.jsonist ein JSON Dokument im aktuellen Verzeichnis, das das zu löschende Objekt angibt:

{ "Objects": [ { "Key": "test1.txt" } ], "Quiet": false }

Ausgabe:

{ "Deleted": [ { "DeleteMarkerVersionId": "mYAT5Mc6F7aeUL8SS7FAAqUPO1koHwzU", "Key": "test1.txt", "DeleteMarker": true } ] }
  • APIEinzelheiten finden Sie DeleteObjectsin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie man es benutztdelete-public-access-block.

AWS CLI

Um die Konfiguration „Öffentlichen Zugriff blockieren“ für einen Bucket zu löschen

Im folgenden delete-public-access-block Beispiel wird die Konfiguration „Öffentlicher Zugriff blockieren“ für den angegebenen Bucket entfernt.

aws s3api delete-public-access-block \ --bucket my-bucket

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Das folgende Codebeispiel zeigt, wie man es benutztget-bucket-accelerate-configuration.

AWS CLI

Um die Accelerate-Konfiguration eines Buckets abzurufen

Im folgenden get-bucket-accelerate-configuration Beispiel wird die Accelerate-Konfiguration für den angegebenen Bucket abgerufen.

aws s3api get-bucket-accelerate-configuration \ --bucket my-bucket

Ausgabe:

{ "Status": "Enabled" }

Das folgende Codebeispiel zeigt, wie man es benutztget-bucket-acl.

AWS CLI

Der folgende Befehl ruft die Zugriffskontrollliste für einen Bucket mit dem Namen my-bucket ab:

aws s3api get-bucket-acl --bucket my-bucket

Ausgabe:

{ "Owner": { "DisplayName": "my-username", "ID": "7009a8971cd538e11f6b6606438875e7c86c5b672f46db45460ddcd087d36c32" }, "Grants": [ { "Grantee": { "DisplayName": "my-username", "ID": "7009a8971cd538e11f6b6606438875e7c86c5b672f46db45460ddcd087d36c32" }, "Permission": "FULL_CONTROL" } ] }
  • APIEinzelheiten finden Sie GetBucketAclin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie man es benutztget-bucket-analytics-configuration.

AWS CLI

Um die Analytics-Konfiguration für einen Bucket mit einer bestimmten ID abzurufen

Im folgenden get-bucket-analytics-configuration Beispiel wird die Analytics-Konfiguration für den angegebenen Bucket und die angegebene ID angezeigt.

aws s3api get-bucket-analytics-configuration \ --bucket my-bucket \ --id 1

Ausgabe:

{ "AnalyticsConfiguration": { "StorageClassAnalysis": {}, "Id": "1" } }

Das folgende Codebeispiel zeigt, wie man es benutztget-bucket-cors.

AWS CLI

Der folgende Befehl ruft die Cross-Origin Resource Sharing-Konfiguration für einen Bucket mit dem Namen ab: my-bucket

aws s3api get-bucket-cors --bucket my-bucket

Ausgabe:

{ "CORSRules": [ { "AllowedHeaders": [ "*" ], "ExposeHeaders": [ "x-amz-server-side-encryption" ], "AllowedMethods": [ "PUT", "POST", "DELETE" ], "MaxAgeSeconds": 3000, "AllowedOrigins": [ "http://www.example.com" ] }, { "AllowedHeaders": [ "Authorization" ], "MaxAgeSeconds": 3000, "AllowedMethods": [ "GET" ], "AllowedOrigins": [ "*" ] } ] }
  • APIEinzelheiten finden Sie GetBucketCorsin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie man es benutztget-bucket-encryption.

AWS CLI

Um die serverseitige Verschlüsselungskonfiguration für einen Bucket abzurufen

Im folgenden get-bucket-encryption Beispiel wird die serverseitige Verschlüsselungskonfiguration für den Bucket abgerufen. my-bucket

aws s3api get-bucket-encryption \ --bucket my-bucket

Ausgabe:

{ "ServerSideEncryptionConfiguration": { "Rules": [ { "ApplyServerSideEncryptionByDefault": { "SSEAlgorithm": "AES256" } } ] } }

Das folgende Codebeispiel zeigt, wie man es benutztget-bucket-intelligent-tiering-configuration.

AWS CLI

Um eine S3 Intelligent-Tiering-Konfiguration für einen Bucket abzurufen

Im folgenden get-bucket-intelligent-tiering-configuration Beispiel wird eine S3 Intelligent-Tiering-Konfiguration mit dem Namen, für einen Bucket abgerufen. ExampleConfig

aws s3api get-bucket-intelligent-tiering-configuration \ --bucket DOC-EXAMPLE-BUCKET \ --id ExampleConfig

Ausgabe:

{ "IntelligentTieringConfiguration": { "Id": "ExampleConfig2", "Filter": { "Prefix": "images" }, "Status": "Enabled", "Tierings": [ { "Days": 90, "AccessTier": "ARCHIVE_ACCESS" }, { "Days": 180, "AccessTier": "DEEP_ARCHIVE_ACCESS" } ] } }

Weitere Informationen finden Sie unter Verwenden von S3 Intelligent-Tiering im Amazon S3 S3-Benutzerhandbuch.

Das folgende Codebeispiel zeigt, wie man es benutztget-bucket-inventory-configuration.

AWS CLI

Um die Inventarkonfiguration für einen Bucket abzurufen

Im folgenden get-bucket-inventory-configuration Beispiel wird die Inventarkonfiguration für den angegebenen Bucket mit der ID 1 abgerufen.

aws s3api get-bucket-inventory-configuration \ --bucket my-bucket \ --id 1

Ausgabe:

{ "InventoryConfiguration": { "IsEnabled": true, "Destination": { "S3BucketDestination": { "Format": "ORC", "Bucket": "arn:aws:s3:::my-bucket", "AccountId": "123456789012" } }, "IncludedObjectVersions": "Current", "Id": "1", "Schedule": { "Frequency": "Weekly" } } }

Das folgende Codebeispiel zeigt, wie man es benutztget-bucket-lifecycle-configuration.

AWS CLI

Der folgende Befehl ruft die Lebenszykluskonfiguration für einen Bucket mit dem Namen my-bucket ab:

aws s3api get-bucket-lifecycle-configuration --bucket my-bucket

Ausgabe:

{ "Rules": [ { "ID": "Move rotated logs to Glacier", "Prefix": "rotated/", "Status": "Enabled", "Transitions": [ { "Date": "2015-11-10T00:00:00.000Z", "StorageClass": "GLACIER" } ] }, { "Status": "Enabled", "Prefix": "", "NoncurrentVersionTransitions": [ { "NoncurrentDays": 0, "StorageClass": "GLACIER" } ], "ID": "Move old versions to Glacier" } ] }

Das folgende Codebeispiel zeigt, wie man es benutztget-bucket-lifecycle.

AWS CLI

Der folgende Befehl ruft die Lebenszykluskonfiguration für einen Bucket mit dem Namen my-bucket ab:

aws s3api get-bucket-lifecycle --bucket my-bucket

Ausgabe:

{ "Rules": [ { "ID": "Move to Glacier after sixty days (objects in logs/2015/)", "Prefix": "logs/2015/", "Status": "Enabled", "Transition": { "Days": 60, "StorageClass": "GLACIER" } }, { "Expiration": { "Date": "2016-01-01T00:00:00.000Z" }, "ID": "Delete 2014 logs in 2016.", "Prefix": "logs/2014/", "Status": "Enabled" } ] }

Das folgende Codebeispiel zeigt, wie man es benutztget-bucket-location.

AWS CLI

Mit dem folgenden Befehl wird die Standortbeschränkung für einen Bucket mit dem Namen abgerufenmy-bucket, falls eine Einschränkung existiert:

aws s3api get-bucket-location --bucket my-bucket

Ausgabe:

{ "LocationConstraint": "us-west-2" }

Das folgende Codebeispiel zeigt, wie man es benutztget-bucket-logging.

AWS CLI

Um den Logging-Status für einen Bucket abzurufen

Im folgenden get-bucket-logging Beispiel wird der Logging-Status für den angegebenen Bucket abgerufen.

aws s3api get-bucket-logging \ --bucket my-bucket

Ausgabe:

{ "LoggingEnabled": { "TargetPrefix": "", "TargetBucket": "my-bucket-logs" } }

Das folgende Codebeispiel zeigt, wie man es benutztget-bucket-metrics-configuration.

AWS CLI

Um die Metrikkonfiguration für einen Bucket mit einer bestimmten ID abzurufen

Im folgenden get-bucket-metrics-configuration Beispiel wird die Metrikkonfiguration für den angegebenen Bucket und die angegebene ID angezeigt.

aws s3api get-bucket-metrics-configuration \ --bucket my-bucket \ --id 123

Ausgabe:

{ "MetricsConfiguration": { "Filter": { "Prefix": "logs" }, "Id": "123" } }

Das folgende Codebeispiel zeigt, wie man es benutztget-bucket-notification-configuration.

AWS CLI

Der folgende Befehl ruft die Benachrichtigungskonfiguration für einen Bucket mit dem Namen my-bucket ab:

aws s3api get-bucket-notification-configuration --bucket my-bucket

Ausgabe:

{ "TopicConfigurations": [ { "Id": "YmQzMmEwM2EjZWVlI0NGItNzVtZjI1MC00ZjgyLWZDBiZWNl", "TopicArn": "arn:aws:sns:us-west-2:123456789012:my-notification-topic", "Events": [ "s3:ObjectCreated:*" ] } ] }

Das folgende Codebeispiel zeigt, wie man es benutztget-bucket-notification.

AWS CLI

Der folgende Befehl ruft die Benachrichtigungskonfiguration für einen Bucket mit dem Namen my-bucket ab:

aws s3api get-bucket-notification --bucket my-bucket

Ausgabe:

{ "TopicConfiguration": { "Topic": "arn:aws:sns:us-west-2:123456789012:my-notification-topic", "Id": "YmQzMmEwM2EjZWVlI0NGItNzVtZjI1MC00ZjgyLWZDBiZWNl", "Event": "s3:ObjectCreated:*", "Events": [ "s3:ObjectCreated:*" ] } }

Das folgende Codebeispiel zeigt, wie man es benutztget-bucket-ownership-controls.

AWS CLI

Um die Bucket-Besitzeinstellungen eines Buckets abzurufen

Im folgenden get-bucket-ownership-controls Beispiel werden die Einstellungen für den Bucket-Besitz eines Buckets abgerufen.

aws s3api get-bucket-ownership-controls \ --bucket DOC-EXAMPLE-BUCKET

Ausgabe:

{ "OwnershipControls": { "Rules": [ { "ObjectOwnership": "BucketOwnerEnforced" } ] } }

Weitere Informationen finden Sie im Amazon S3-Benutzerhandbuch unter Objektbesitzeinstellungen für einen S3-Bucket anzeigen.

Das folgende Codebeispiel zeigt, wie man es benutztget-bucket-policy-status.

AWS CLI

Um den Richtlinienstatus für einen Bucket abzurufen, der angibt, ob der Bucket öffentlich ist

Im folgenden get-bucket-policy-status Beispiel wird der Richtlinienstatus für den Bucket my-bucket abgerufen.

aws s3api get-bucket-policy-status \ --bucket my-bucket

Ausgabe:

{ "PolicyStatus": { "IsPublic": false } }

Das folgende Codebeispiel zeigt, wie man es benutztget-bucket-policy.

AWS CLI

Mit dem folgenden Befehl wird die Bucket-Richtlinie für einen Bucket mit dem Namen my-bucket abgerufen:

aws s3api get-bucket-policy --bucket my-bucket

Ausgabe:

{ "Policy": "{\"Version\":\"2008-10-17\",\"Statement\":[{\"Sid\":\"\",\"Effect\":\"Allow\",\"Principal\":\"*\",\"Action\":\"s3:GetObject\",\"Resource\":\"arn:aws:s3:::my-bucket/*\"},{\"Sid\":\"\",\"Effect\":\"Deny\",\"Principal\":\"*\",\"Action\":\"s3:GetObject\",\"Resource\":\"arn:aws:s3:::my-bucket/secret/*\"}]}" }

Get and Put a Bucket Das policyThe folgende Beispiel zeigt, wie Sie eine Amazon S3 S3-Bucket-Richtlinie herunterladen, Änderungen an der Datei vornehmen und dann die geänderte Bucket-Richtlinie anwenden können. put-bucket-policy Um die Bucket-Richtlinie in eine Datei herunterzuladen, können Sie Folgendes ausführen:

aws s3api get-bucket-policy --bucket mybucket --query Policy --output text > policy.json

Anschließend können Sie die policy.json Datei nach Bedarf ändern. Schließlich können Sie diese geänderte Richtlinie wieder auf den S3-Bucket anwenden, indem Sie Folgendes ausführen:

policy.jsonDatei nach Bedarf. Schließlich können Sie diese geänderte Richtlinie wieder auf den S3-Bucket anwenden, indem Sie Folgendes ausführen:

Datei nach Bedarf. Schließlich können Sie diese geänderte Richtlinie wieder auf den S3-Bucket anwenden, indem Sie Folgendes ausführen:

aws s3api put-bucket-policy --bucket mybucket --policy file://policy.json
  • APIEinzelheiten finden Sie GetBucketPolicyin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie man es benutztget-bucket-replication.

AWS CLI

Der folgende Befehl ruft die Replikationskonfiguration für einen Bucket mit dem Namen my-bucket ab:

aws s3api get-bucket-replication --bucket my-bucket

Ausgabe:

{ "ReplicationConfiguration": { "Rules": [ { "Status": "Enabled", "Prefix": "", "Destination": { "Bucket": "arn:aws:s3:::my-bucket-backup", "StorageClass": "STANDARD" }, "ID": "ZmUwNzE4ZmQ4tMjVhOS00MTlkLOGI4NDkzZTIWJjNTUtYTA1" } ], "Role": "arn:aws:iam::123456789012:role/s3-replication-role" } }

Das folgende Codebeispiel zeigt die Verwendungget-bucket-request-payment.

AWS CLI

Um die Konfiguration der Zahlungsanfrage für einen Bucket abzurufen

Im folgenden get-bucket-request-payment Beispiel wird die Konfiguration für Zahlungen durch den Antragsteller für den angegebenen Bucket abgerufen.

aws s3api get-bucket-request-payment \ --bucket my-bucket

Ausgabe:

{ "Payer": "BucketOwner" }

Das folgende Codebeispiel zeigt die Verwendungget-bucket-tagging.

AWS CLI

Der folgende Befehl ruft die Tagging-Konfiguration für einen Bucket mit dem Namen ab: my-bucket

aws s3api get-bucket-tagging --bucket my-bucket

Ausgabe:

{ "TagSet": [ { "Value": "marketing", "Key": "organization" } ] }

Das folgende Codebeispiel zeigt die Verwendungget-bucket-versioning.

AWS CLI

Mit dem folgenden Befehl wird die Versionierungskonfiguration für einen Bucket mit dem Namen abgerufen: my-bucket

aws s3api get-bucket-versioning --bucket my-bucket

Ausgabe:

{ "Status": "Enabled" }

Das folgende Codebeispiel zeigt die Verwendungget-bucket-website.

AWS CLI

Mit dem folgenden Befehl wird die statische Website-Konfiguration für einen Bucket mit dem Namen my-bucket abgerufen:

aws s3api get-bucket-website --bucket my-bucket

Ausgabe:

{ "IndexDocument": { "Suffix": "index.html" }, "ErrorDocument": { "Key": "error.html" } }

Das folgende Codebeispiel zeigt die Verwendungget-object-acl.

AWS CLI

Mit dem folgenden Befehl wird die Zugriffskontrollliste für ein Objekt in einem Bucket mit dem Namen my-bucket abgerufen:

aws s3api get-object-acl --bucket my-bucket --key index.html

Ausgabe:

{ "Owner": { "DisplayName": "my-username", "ID": "7009a8971cd538e11f6b6606438875e7c86c5b672f46db45460ddcd087d36c32" }, "Grants": [ { "Grantee": { "DisplayName": "my-username", "ID": "7009a8971cd538e11f6b6606438875e7c86c5b672f46db45460ddcd087d36c32" }, "Permission": "FULL_CONTROL" }, { "Grantee": { "URI": "http://acs.amazonaws.com/groups/global/AllUsers" }, "Permission": "READ" } ] }
  • APIEinzelheiten finden Sie GetObjectAclin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungget-object-attributes.

AWS CLI

Um Metadaten von einem Objekt abzurufen, ohne das Objekt selbst zurückzugeben

Im folgenden get-object-attributes Beispiel werden Metadaten aus dem Objekt abgerufen. doc1.rtf

aws s3api get-object-attributes \ --bucket my-bucket \ --key doc1.rtf \ --object-attributes "StorageClass" "ETag" "ObjectSize"

Ausgabe:

{ "LastModified": "2022-03-15T19:37:31+00:00", "VersionId": "IuCPjXTDzHNfldAuitVBIKJpF2p1fg4P", "ETag": "b662d79adeb7c8d787ea7eafb9ef6207", "StorageClass": "STANDARD", "ObjectSize": 405 }

Weitere Informationen finden Sie GetObjectAttributesin der Amazon S3 API S3-Referenz.

Das folgende Codebeispiel zeigt die Verwendungget-object-legal-hold.

AWS CLI

Ruft den Status „Legal Hold“ eines Objekts ab

Im folgenden get-object-legal-hold Beispiel wird der Status Legal Hold für das angegebene Objekt abgerufen.

aws s3api get-object-legal-hold \ --bucket my-bucket-with-object-lock \ --key doc1.rtf

Ausgabe:

{ "LegalHold": { "Status": "ON" } }

Das folgende Codebeispiel zeigt die Verwendungget-object-lock-configuration.

AWS CLI

Um eine Objektsperrkonfiguration für einen Bucket abzurufen

Im folgenden get-object-lock-configuration Beispiel wird die Objektsperrkonfiguration für den angegebenen Bucket abgerufen.

aws s3api get-object-lock-configuration \ --bucket my-bucket-with-object-lock

Ausgabe:

{ "ObjectLockConfiguration": { "ObjectLockEnabled": "Enabled", "Rule": { "DefaultRetention": { "Mode": "COMPLIANCE", "Days": 50 } } } }

Das folgende Codebeispiel zeigt die Verwendungget-object-retention.

AWS CLI

Um die Objektaufbewahrungskonfiguration für ein Objekt abzurufen

Im folgenden get-object-retention Beispiel wird die Objektaufbewahrungskonfiguration für das angegebene Objekt abgerufen.

aws s3api get-object-retention \ --bucket my-bucket-with-object-lock \ --key doc1.rtf

Ausgabe:

{ "Retention": { "Mode": "GOVERNANCE", "RetainUntilDate": "2025-01-01T00:00:00.000Z" } }

Das folgende Codebeispiel zeigt die Verwendungget-object-tagging.

AWS CLI

Um die an ein Objekt angehängten Tags abzurufen

Im folgenden get-object-tagging Beispiel werden die Werte für den angegebenen Schlüssel aus dem angegebenen Objekt abgerufen.

aws s3api get-object-tagging \ --bucket my-bucket \ --key doc1.rtf

Ausgabe:

{ "TagSet": [ { "Value": "confidential", "Key": "designation" } ] }

Im folgenden get-object-tagging Beispiel wird versucht, die Tagsätze des Objekts abzurufendoc2.rtf, das keine Tags hat.

aws s3api get-object-tagging \ --bucket my-bucket \ --key doc2.rtf

Ausgabe:

{ "TagSet": [] }

Im folgenden get-object-tagging Beispiel werden die Tagsätze des Objekts abgerufendoc3.rtf, das über mehrere Tags verfügt.

aws s3api get-object-tagging \ --bucket my-bucket \ --key doc3.rtf

Ausgabe:

{ "TagSet": [ { "Value": "confidential", "Key": "designation" }, { "Value": "finance", "Key": "department" }, { "Value": "payroll", "Key": "team" } ] }

Das folgende Codebeispiel zeigt die Verwendungget-object-torrent.

AWS CLI

Der folgende Befehl erstellt einen Torrent für ein Objekt in einem Bucket mit dem Namenmy-bucket:

aws s3api get-object-torrent --bucket my-bucket --key large-video-file.mp4 large-video-file.torrent

Die Torrent-Datei wird lokal im aktuellen Ordner gespeichert. Beachten Sie, dass der Ausgabedateiname (large-video-file.torrent) ohne Optionsnamen angegeben wird und das letzte Argument im Befehl sein muss.

Das folgende Codebeispiel zeigt die Verwendungget-object.

AWS CLI

Im folgenden Beispiel wird der get-object Befehl verwendet, um ein Objekt von Amazon S3 herunterzuladen:

aws s3api get-object --bucket text-content --key dir/my_images.tar.bz2 my_images.tar.bz2

Beachten Sie, dass der Outfile-Parameter ohne einen Optionsnamen wie „--outfile“ angegeben wird. Der Name der Ausgabedatei muss der letzte Parameter im Befehl sein.

Das folgende Beispiel zeigt die Verwendung von--range, um einen bestimmten Bytebereich von einem Objekt herunterzuladen. Beachten Sie, dass den Bytebereichen das Präfix „bytes=“ vorangestellt werden muss:

aws s3api get-object --bucket text-content --key dir/my_data --range bytes=8888-9999 my_data_range

Weitere Informationen zum Abrufen von Objekten finden Sie unter Getting Objects im Amazon S3 Developer Guide.

Das folgende Codebeispiel zeigt die Verwendungget-public-access-block.

AWS CLI

Um die Konfiguration für den öffentlichen Zugriff blockieren für einen Bucket festzulegen oder zu ändern

Das folgende get-public-access-block Beispiel zeigt die Konfiguration für den blockierten öffentlichen Zugriff für den angegebenen Bucket.

aws s3api get-public-access-block \ --bucket my-bucket

Ausgabe:

{ "PublicAccessBlockConfiguration": { "IgnorePublicAcls": true, "BlockPublicPolicy": true, "BlockPublicAcls": true, "RestrictPublicBuckets": true } }

Das folgende Codebeispiel zeigt die Verwendunghead-bucket.

AWS CLI

Der folgende Befehl überprüft den Zugriff auf einen Bucket mit dem Namenmy-bucket:

aws s3api head-bucket --bucket my-bucket

Wenn der Bucket existiert und Sie Zugriff darauf haben, wird keine Ausgabe zurückgegeben. Andernfalls wird eine Fehlermeldung angezeigt. Beispielsweise:

A client error (404) occurred when calling the HeadBucket operation: Not Found
  • APIEinzelheiten finden Sie HeadBucketin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendunghead-object.

AWS CLI

Der folgende Befehl ruft Metadaten für ein Objekt in einem Bucket mit dem Namen my-bucket ab:

aws s3api head-object --bucket my-bucket --key index.html

Ausgabe:

{ "AcceptRanges": "bytes", "ContentType": "text/html", "LastModified": "Thu, 16 Apr 2015 18:19:14 GMT", "ContentLength": 77, "VersionId": "null", "ETag": "\"30a6ec7e1a9ad79c203d05a589c8b400\"", "Metadata": {} }
  • APIEinzelheiten finden Sie HeadObjectin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendunglist-bucket-analytics-configurations.

AWS CLI

Um eine Liste von Analytics-Konfigurationen für einen Bucket abzurufen

Im Folgenden wird eine Liste der Analytics-Konfigurationen für den angegebenen Bucket list-bucket-analytics-configurations abgerufen.

aws s3api list-bucket-analytics-configurations \ --bucket my-bucket

Ausgabe:

{ "AnalyticsConfigurationList": [ { "StorageClassAnalysis": {}, "Id": "1" } ], "IsTruncated": false }

Das folgende Codebeispiel zeigt die Verwendunglist-bucket-intelligent-tiering-configurations.

AWS CLI

Um alle S3 Intelligent-Tiering-Konfigurationen in einem Bucket abzurufen

Im folgenden list-bucket-intelligent-tiering-configurations Beispiel wird die gesamte S3 Intelligent-Tiering-Konfiguration in einem Bucket abgerufen.

aws s3api list-bucket-intelligent-tiering-configurations \ --bucket DOC-EXAMPLE-BUCKET

Ausgabe:

{ "IsTruncated": false, "IntelligentTieringConfigurationList": [ { "Id": "ExampleConfig", "Filter": { "Prefix": "images" }, "Status": "Enabled", "Tierings": [ { "Days": 90, "AccessTier": "ARCHIVE_ACCESS" }, { "Days": 180, "AccessTier": "DEEP_ARCHIVE_ACCESS" } ] }, { "Id": "ExampleConfig2", "Status": "Disabled", "Tierings": [ { "Days": 730, "AccessTier": "ARCHIVE_ACCESS" } ] }, { "Id": "ExampleConfig3", "Filter": { "Tag": { "Key": "documents", "Value": "taxes" } }, "Status": "Enabled", "Tierings": [ { "Days": 90, "AccessTier": "ARCHIVE_ACCESS" }, { "Days": 365, "AccessTier": "DEEP_ARCHIVE_ACCESS" } ] } ] }

Weitere Informationen finden Sie unter Verwenden von S3 Intelligent-Tiering im Amazon S3 S3-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendunglist-bucket-inventory-configurations.

AWS CLI

Um eine Liste von Inventarkonfigurationen für einen Bucket abzurufen

Das folgende list-bucket-inventory-configurations Beispiel listet die Inventarkonfigurationen für den angegebenen Bucket auf.

aws s3api list-bucket-inventory-configurations \ --bucket my-bucket

Ausgabe:

{ "InventoryConfigurationList": [ { "IsEnabled": true, "Destination": { "S3BucketDestination": { "Format": "ORC", "Bucket": "arn:aws:s3:::my-bucket", "AccountId": "123456789012" } }, "IncludedObjectVersions": "Current", "Id": "1", "Schedule": { "Frequency": "Weekly" } }, { "IsEnabled": true, "Destination": { "S3BucketDestination": { "Format": "CSV", "Bucket": "arn:aws:s3:::my-bucket", "AccountId": "123456789012" } }, "IncludedObjectVersions": "Current", "Id": "2", "Schedule": { "Frequency": "Daily" } } ], "IsTruncated": false }

Das folgende Codebeispiel zeigt die Verwendunglist-bucket-metrics-configurations.

AWS CLI

Um eine Liste von Metrikkonfigurationen für einen Bucket abzurufen

Im folgenden list-bucket-metrics-configurations Beispiel wird eine Liste von Metrikkonfigurationen für den angegebenen Bucket abgerufen.

aws s3api list-bucket-metrics-configurations \ --bucket my-bucket

Ausgabe:

{ "IsTruncated": false, "MetricsConfigurationList": [ { "Filter": { "Prefix": "logs" }, "Id": "123" }, { "Filter": { "Prefix": "tmp" }, "Id": "234" } ] }

Das folgende Codebeispiel zeigt die Verwendunglist-buckets.

AWS CLI

Der folgende Befehl verwendet den list-buckets Befehl, um die Namen all Ihrer Amazon S3 S3-Buckets (in allen Regionen) anzuzeigen:

aws s3api list-buckets --query "Buckets[].Name"

Die Abfrageoption filtert die Ausgabe von list-buckets bis auf die Bucket-Namen.

Weitere Informationen zu Buckets finden Sie unter Working with Amazon S3 Buckets im Amazon S3 Developer Guide.

  • APIEinzelheiten finden Sie ListBucketsin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendunglist-multipart-uploads.

AWS CLI

Der folgende Befehl listet alle aktiven mehrteiligen Uploads für einen Bucket mit dem Namen auf: my-bucket

aws s3api list-multipart-uploads --bucket my-bucket

Ausgabe:

{ "Uploads": [ { "Initiator": { "DisplayName": "username", "ID": "arn:aws:iam::0123456789012:user/username" }, "Initiated": "2015-06-02T18:01:30.000Z", "UploadId": "dfRtDYU0WWCCcH43C3WFbkRONycyCpTJJvxu2i5GYkZljF.Yxwh6XG7WfS2vC4to6HiV6Yjlx.cph0gtNBtJ8P3URCSbB7rjxI5iEwVDmgaXZOGgkk5nVTW16HOQ5l0R", "StorageClass": "STANDARD", "Key": "multipart/01", "Owner": { "DisplayName": "aws-account-name", "ID": "100719349fc3b6dcd7c820a124bf7aecd408092c3d7b51b38494939801fc248b" } } ], "CommonPrefixes": [] }

Bei laufenden mehrteiligen Uploads fallen Speicherkosten in Amazon S3 an. Schließen Sie einen aktiven mehrteiligen Upload ab oder brechen Sie ihn ab, um seine Teile aus Ihrem Konto zu entfernen.

Das folgende Codebeispiel zeigt die Verwendunglist-object-versions.

AWS CLI

Der folgende Befehl ruft Versionsinformationen für ein Objekt in einem Bucket mit dem Namen my-bucket ab:

aws s3api list-object-versions --bucket my-bucket --prefix index.html

Ausgabe:

{ "DeleteMarkers": [ { "Owner": { "DisplayName": "my-username", "ID": "7009a8971cd660687538875e7c86c5b672fe116bd438f46db45460ddcd036c32" }, "IsLatest": true, "VersionId": "B2VsEK5saUNNHKcOAJj7hIE86RozToyq", "Key": "index.html", "LastModified": "2015-11-10T00:57:03.000Z" }, { "Owner": { "DisplayName": "my-username", "ID": "7009a8971cd660687538875e7c86c5b672fe116bd438f46db45460ddcd036c32" }, "IsLatest": false, "VersionId": ".FLQEZscLIcfxSq.jsFJ.szUkmng2Yw6", "Key": "index.html", "LastModified": "2015-11-09T23:32:20.000Z" } ], "Versions": [ { "LastModified": "2015-11-10T00:20:11.000Z", "VersionId": "Rb_l2T8UHDkFEwCgJjhlgPOZC0qJ.vpD", "ETag": "\"0622528de826c0df5db1258a23b80be5\"", "StorageClass": "STANDARD", "Key": "index.html", "Owner": { "DisplayName": "my-username", "ID": "7009a8971cd660687538875e7c86c5b672fe116bd438f46db45460ddcd036c32" }, "IsLatest": false, "Size": 38 }, { "LastModified": "2015-11-09T23:26:41.000Z", "VersionId": "rasWWGpgk9E4s0LyTJgusGeRQKLVIAFf", "ETag": "\"06225825b8028de826c0df5db1a23be5\"", "StorageClass": "STANDARD", "Key": "index.html", "Owner": { "DisplayName": "my-username", "ID": "7009a8971cd660687538875e7c86c5b672fe116bd438f46db45460ddcd036c32" }, "IsLatest": false, "Size": 38 }, { "LastModified": "2015-11-09T22:50:50.000Z", "VersionId": "null", "ETag": "\"d1f45267a863c8392e07d24dd592f1b9\"", "StorageClass": "STANDARD", "Key": "index.html", "Owner": { "DisplayName": "my-username", "ID": "7009a8971cd660687538875e7c86c5b672fe116bd438f46db45460ddcd036c32" }, "IsLatest": false, "Size": 533823 } ] }

Das folgende Codebeispiel zeigt die Verwendunglist-objects-v2.

AWS CLI

Um eine Liste von Objekten in einem Bucket abzurufen

Das folgende list-objects-v2 Beispiel listet die Objekte im angegebenen Bucket auf.

aws s3api list-objects-v2 \ --bucket my-bucket

Ausgabe:

{ "Contents": [ { "LastModified": "2019-11-05T23:11:50.000Z", "ETag": "\"621503c373607d548b37cff8778d992c\"", "StorageClass": "STANDARD", "Key": "doc1.rtf", "Size": 391 }, { "LastModified": "2019-11-05T23:11:50.000Z", "ETag": "\"a2cecc36ab7c7fe3a71a273b9d45b1b5\"", "StorageClass": "STANDARD", "Key": "doc2.rtf", "Size": 373 }, { "LastModified": "2019-11-05T23:11:50.000Z", "ETag": "\"08210852f65a2e9cb999972539a64d68\"", "StorageClass": "STANDARD", "Key": "doc3.rtf", "Size": 399 }, { "LastModified": "2019-11-05T23:11:50.000Z", "ETag": "\"d1852dd683f404306569471af106988e\"", "StorageClass": "STANDARD", "Key": "doc4.rtf", "Size": 6225 } ] }
  • APIEinzelheiten finden Sie unter ListObjectsV2 in der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendunglist-objects.

AWS CLI

Im folgenden Beispiel wird der list-objects Befehl verwendet, um die Namen aller Objekte im angegebenen Bucket anzuzeigen:

aws s3api list-objects --bucket text-content --query 'Contents[].{Key: Key, Size: Size}'

Im Beispiel wird das --query Argument verwendet, um die Ausgabe von list-objects nach Schlüsselwert und Größe für jedes Objekt zu filtern

Weitere Informationen zu Objekten finden Sie unter Working with Amazon S3 Objects im Amazon S3 Developer Guide.

  • APIEinzelheiten finden Sie ListObjectsunter AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendunglist-parts.

AWS CLI

Der folgende Befehl listet alle Teile auf, die für einen mehrteiligen Upload mit Schlüssel multipart/01 im Bucket my-bucket hochgeladen wurden:

aws s3api list-parts --bucket my-bucket --key 'multipart/01' --upload-id dfRtDYU0WWCCcH43C3WFbkRONycyCpTJJvxu2i5GYkZljF.Yxwh6XG7WfS2vC4to6HiV6Yjlx.cph0gtNBtJ8P3URCSbB7rjxI5iEwVDmgaXZOGgkk5nVTW16HOQ5l0R

Ausgabe:

{ "Owner": { "DisplayName": "aws-account-name", "ID": "100719349fc3b6dcd7c820a124bf7aecd408092c3d7b51b38494939801fc248b" }, "Initiator": { "DisplayName": "username", "ID": "arn:aws:iam::0123456789012:user/username" }, "Parts": [ { "LastModified": "2015-06-02T18:07:35.000Z", "PartNumber": 1, "ETag": "\"e868e0f4719e394144ef36531ee6824c\"", "Size": 5242880 }, { "LastModified": "2015-06-02T18:07:42.000Z", "PartNumber": 2, "ETag": "\"6bb2b12753d66fe86da4998aa33fffb0\"", "Size": 5242880 }, { "LastModified": "2015-06-02T18:07:47.000Z", "PartNumber": 3, "ETag": "\"d0a0112e841abec9c9ec83406f0159c8\"", "Size": 5242880 } ], "StorageClass": "STANDARD" }
  • APIEinzelheiten finden Sie ListPartsin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungls.

AWS CLI

Beispiel 1: Auflisten aller benutzereigenen Buckets

Der folgende ls Befehl listet alle Buckets auf, die dem Benutzer gehören. In diesem Beispiel besitzt der Benutzer die Buckets mybucket undmybucket2. Der Zeitstempel ist das Datum, an dem der Bucket erstellt wurde. Er wird in der Zeitzone Ihres Computers angezeigt. Dieses Datum kann sich ändern, wenn Sie Änderungen an Ihrem Bucket vornehmen, z. B. wenn Sie dessen Bucket-Richtlinie bearbeiten. Beachten Sie, s3:// dass, wenn es für das Pfadargument verwendet wird<S3Uri>, auch alle Buckets aufgelistet werden.

aws s3 ls

Ausgabe:

2013-07-11 17:08:50 mybucket 2013-07-24 14:55:44 mybucket2

Beispiel 2: Alle Präfixe und Objekte in einem Bucket auflisten

Der folgende ls Befehl listet Objekte und allgemeine Präfixe unter einem bestimmten Bucket und Präfix auf. In diesem Beispiel besitzt der Benutzer den Bucket mybucket mit den Objekten test.txt undsomePrefix/test.txt. Die LastWriteTime und Length sind willkürlich. Beachten Sie, dass das s3:// URI Schema nicht zur Auflösung von Mehrdeutigkeiten erforderlich ist und daher weggelassen werden kann, da der ls Befehl keine Interaktion mit dem lokalen Dateisystem hat.

aws s3 ls s3://mybucket

Ausgabe:

PRE somePrefix/ 2013-07-25 17:06:27 88 test.txt

Beispiel 3: Auflisten aller Präfixe und Objekte in einem bestimmten Bucket und Präfix

Der folgende ls Befehl listet Objekte und allgemeine Präfixe unter einem bestimmten Bucket und Präfix auf. Unter dem angegebenen Bucket und Präfix befinden sich jedoch weder Objekte noch allgemeine Präfixe.

aws s3 ls s3://mybucket/noExistPrefix

Ausgabe:

None

Beispiel 4: Rekursives Auflisten aller Präfixe und Objekte in einem Bucket

Der folgende ls Befehl listet Objekte in einem Bucket rekursiv auf. Anstatt PRE dirname/ in der Ausgabe angezeigt zu werden, wird der gesamte Inhalt eines Buckets der Reihe nach aufgelistet.

aws s3 ls s3://mybucket \ --recursive

Ausgabe:

2013-09-02 21:37:53 10 a.txt 2013-09-02 21:37:53 2863288 foo.zip 2013-09-02 21:32:57 23 foo/bar/.baz/a 2013-09-02 21:32:58 41 foo/bar/.baz/b 2013-09-02 21:32:57 281 foo/bar/.baz/c 2013-09-02 21:32:57 73 foo/bar/.baz/d 2013-09-02 21:32:57 452 foo/bar/.baz/e 2013-09-02 21:32:57 896 foo/bar/.baz/hooks/bar 2013-09-02 21:32:57 189 foo/bar/.baz/hooks/foo 2013-09-02 21:32:57 398 z.txt

Beispiel 5: Zusammenfassung aller Präfixe und Objekte in einem Bucket

Der folgende ls Befehl demonstriert denselben Befehl mit den Optionen --human-readable und --summarize. --human-readable zeigt die Dateigröße in Bytes/MIB/KiB/Gib/TIB/PIB/EIB an. --summarize zeigt die Gesamtzahl der Objekte und die Gesamtgröße am Ende der Ergebnisliste an:

aws s3 ls s3://mybucket \ --recursive \ --human-readable \ --summarize

Ausgabe:

2013-09-02 21:37:53 10 Bytes a.txt 2013-09-02 21:37:53 2.9 MiB foo.zip 2013-09-02 21:32:57 23 Bytes foo/bar/.baz/a 2013-09-02 21:32:58 41 Bytes foo/bar/.baz/b 2013-09-02 21:32:57 281 Bytes foo/bar/.baz/c 2013-09-02 21:32:57 73 Bytes foo/bar/.baz/d 2013-09-02 21:32:57 452 Bytes foo/bar/.baz/e 2013-09-02 21:32:57 896 Bytes foo/bar/.baz/hooks/bar 2013-09-02 21:32:57 189 Bytes foo/bar/.baz/hooks/foo 2013-09-02 21:32:57 398 Bytes z.txt Total Objects: 10 Total Size: 2.9 MiB

Beispiel 6: Auflistung von einem S3-Zugangspunkt aus

Der folgende ls Befehl listet Objekte von Access Point (myaccesspoint) auf:

aws s3 ls s3://arn:aws:s3:us-west-2:123456789012:accesspoint/myaccesspoint/

Ausgabe:

PRE somePrefix/ 2013-07-25 17:06:27 88 test.txt
  • APIEinzelheiten finden Sie unter Ls in der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie man es benutztmb.

AWS CLI

Beispiel 1: Erstellen Sie einen Bucket

Der folgende mb Befehl erstellt einen Bucket. In diesem Beispiel erstellt der Benutzer den Bucketmybucket. Der Bucket wird in der Region erstellt, die in der Konfigurationsdatei des Benutzers angegeben ist:

aws s3 mb s3://mybucket

Ausgabe:

make_bucket: s3://mybucket

Beispiel 2: Erstellen Sie einen Bucket in der angegebenen Region

Der folgende mb Befehl erstellt einen Bucket in einer durch den --region Parameter angegebenen Region. In diesem Beispiel erstellt der Benutzer den Bucket mybucket in der Regionus-west-1:

aws s3 mb s3://mybucket \ --region us-west-1

Ausgabe:

make_bucket: s3://mybucket
  • APIEinzelheiten finden Sie unter Mb in der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungmv.

AWS CLI

Beispiel 1: Verschiebt eine lokale Datei in den angegebenen Bucket

Der folgende mv Befehl verschiebt eine einzelne Datei in einen angegebenen Bucket und Schlüssel.

aws s3 mv test.txt s3://mybucket/test2.txt

Ausgabe:

move: test.txt to s3://mybucket/test2.txt

Beispiel 2: Verschiebt ein Objekt in den angegebenen Bucket und Schlüssel

Der folgende mv Befehl verschiebt ein einzelnes S3-Objekt in einen angegebenen Bucket und Schlüssel.

aws s3 mv s3://mybucket/test.txt s3://mybucket/test2.txt

Ausgabe:

move: s3://mybucket/test.txt to s3://mybucket/test2.txt

Beispiel 3: Verschiebt ein S3-Objekt in das lokale Verzeichnis

Der folgende mv Befehl verschiebt ein einzelnes Objekt lokal in eine angegebene Datei.

aws s3 mv s3://mybucket/test.txt test2.txt

Ausgabe:

move: s3://mybucket/test.txt to test2.txt

Beispiel 4: Verschiebt ein Objekt mit seinem ursprünglichen Namen in den angegebenen Bucket

Der folgende mv Befehl verschiebt ein einzelnes Objekt in einen angegebenen Bucket, wobei der ursprüngliche Name beibehalten wird:

aws s3 mv s3://mybucket/test.txt s3://mybucket2/

Ausgabe:

move: s3://mybucket/test.txt to s3://mybucket2/test.txt

Beispiel 5: Verschiebt alle Objekte und Präfixe in einem Bucket in das lokale Verzeichnis

Wenn der folgende mv Befehl zusammen mit dem Parameter übergeben wird--recursive, verschiebt er alle Objekte unter einem bestimmten Präfix und Bucket rekursiv in ein bestimmtes Verzeichnis. In diesem Beispiel mybucket enthält der Bucket die Objekte test1.txt undtest2.txt.

aws s3 mv s3://mybucket . \ --recursive

Ausgabe:

move: s3://mybucket/test1.txt to test1.txt move: s3://mybucket/test2.txt to test2.txt

Beispiel 6: Verschiebt alle Objekte und Präfixe in einem Bucket in das lokale Verzeichnis, mit Ausnahme von ``.jpg``-Dateien

Wenn der folgende mv Befehl zusammen mit dem Parameter übergeben wird--recursive, verschiebt er rekursiv alle Dateien in einem angegebenen Verzeichnis in einen bestimmten Bucket und ein bestimmtes Präfix, wobei einige Dateien mithilfe eines Parameters ausgeschlossen werden. --exclude In diesem Beispiel myDir enthält das Verzeichnis die Dateien test1.txt undtest2.jpg.

aws s3 mv myDir s3://mybucket/ \ --recursive \ --exclude "*.jpg"

Ausgabe:

move: myDir/test1.txt to s3://mybucket2/test1.txt

Beispiel 7: Verschiebt alle Objekte und Präfixe in einem Bucket in das lokale Verzeichnis, mit Ausnahme des angegebenen Präfixes

Wenn der folgende mv Befehl zusammen mit dem Parameter übergeben wird--recursive, verschiebt er rekursiv alle Objekte unter einem angegebenen Bucket in einen anderen Bucket, wobei einige Objekte mithilfe eines --exclude Parameters ausgeschlossen werden. In diesem Beispiel mybucket enthält der Bucket die Objekte test1.txt undanother/test1.txt.

aws s3 mv s3://mybucket/ s3://mybucket2/ \ --recursive \ --exclude "mybucket/another/*"

Ausgabe:

move: s3://mybucket/test1.txt to s3://mybucket2/test1.txt

Beispiel 8: Verschiebt ein Objekt in den angegebenen Bucket und legt den ACL

Mit dem folgenden mv Befehl wird ein einzelnes Objekt in einen bestimmten Bucket und Schlüssel verschoben, wobei der Wert ACL auf gesetzt wirdpublic-read-write.

aws s3 mv s3://mybucket/test.txt s3://mybucket/test2.txt \ --acl public-read-write

Ausgabe:

move: s3://mybucket/test.txt to s3://mybucket/test2.txt

Beispiel 9: Verschiebt eine lokale Datei in den angegebenen Bucket und gewährt Berechtigungen

Der folgende mv Befehl veranschaulicht die Verwendung der --grants Option, um allen Benutzern Lesezugriff und einem bestimmten Benutzer, der anhand seiner E-Mail-Adresse identifiziert wird, Vollzugriff zu gewähren.

aws s3 mv file.txt s3://mybucket/ \ --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers full=emailaddress=user@example.com

Ausgabe:

move: file.txt to s3://mybucket/file.txt

Beispiel 10: Verschieben Sie eine Datei auf einen S3-Zugriffspunkt

Der folgende mv Befehl verschiebt eine einzelne Datei mit dem Namen mydoc.txt zu dem Access Point, der mit myaccesspoint dem angegebenen Schlüssel benannt istmykey.

aws s3 mv mydoc.txt s3://arn:aws:s3:us-west-2:123456789012:accesspoint/myaccesspoint/mykey

Ausgabe:

move: mydoc.txt to s3://arn:aws:s3:us-west-2:123456789012:accesspoint/myaccesspoint/mykey
  • APIEinzelheiten finden Sie unter Mv in der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungpresign.

AWS CLI

Beispiel 1: Um eine vorsignierte Datei URL mit der Standardlebensdauer von einer Stunde zu erstellen, die auf ein Objekt in einem S3-Bucket verweist

Der folgende presign Befehl generiert einen vorsignierten Code URL für einen bestimmten Bucket und einen Schlüssel, der für eine Stunde gültig ist.

aws s3 presign s3://DOC-EXAMPLE-BUCKET/test2.txt

Ausgabe:

https://DOC-EXAMPLE-BUCKET.s3.us-west-2.amazonaws.com/key?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAEXAMPLE123456789%2F20210621%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20210621T041609Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=EXAMBLE1234494d5fba3fed607f98018e1dfc62e2529ae96d844123456

Beispiel 2: Um ein vorsigniertes Objekt URL mit einer benutzerdefinierten Gültigkeitsdauer zu erstellen, das auf ein Objekt in einem S3-Bucket verweist

Der folgende presign Befehl generiert einen vorsignierten Code URL für einen bestimmten Bucket und einen Schlüssel, der für eine Woche gültig ist.

aws s3 presign s3://DOC-EXAMPLE-BUCKET/test2.txt \ --expires-in 604800

Ausgabe:

https://DOC-EXAMPLE-BUCKET.s3.us-west-2.amazonaws.com/key?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAEXAMPLE123456789%2F20210621%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20210621T041609Z&X-Amz-Expires=604800&X-Amz-SignedHeaders=host&X-Amz-Signature=EXAMBLE1234494d5fba3fed607f98018e1dfc62e2529ae96d844123456

Weitere Informationen finden Sie unter Ein Objekt mit anderen teilen im S3 Developer Guide.

  • APIEinzelheiten finden Sie unter Presign in der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungput-bucket-accelerate-configuration.

AWS CLI

Um die Beschleunigungskonfiguration eines Buckets festzulegen

Das folgende put-bucket-accelerate-configuration Beispiel aktiviert die Accelerate-Konfiguration für den angegebenen Bucket.

aws s3api put-bucket-accelerate-configuration \ --bucket my-bucket \ --accelerate-configuration Status=Enabled

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Das folgende Codebeispiel zeigt die Verwendungput-bucket-acl.

AWS CLI

In diesem Beispiel wird zwei AWS Benutzern (user1@example.com und user2@example.com) und allen Benutzern die read Erlaubnis erteilt: full control

aws s3api put-bucket-acl --bucket MyBucket --grant-full-control emailaddress=user1@example.com,emailaddress=user2@example.com --grant-read uri=http://acs.amazonaws.com/groups/global/AllUsers

Einzelheiten zu Benutzerdefiniert finden Sie unter http://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTacl.html ACLs (die ACL s3api-Befehle verwenden z. put-bucket-acl B. dieselbe Kurzschreibweise für Argumente).

  • APIEinzelheiten finden Sie in der Befehlsreferenz PutBucketAcl.AWS CLI

Das folgende Codebeispiel zeigt die Verwendungput-bucket-analytics-configuration.

AWS CLI

Um eine Analytics-Konfiguration für den Bucket festzulegen

Im folgenden put-bucket-analytics-configuration Beispiel werden Analysen für den angegebenen Bucket konfiguriert.

aws s3api put-bucket-analytics-configuration \ --bucket my-bucket --id 1 \ --analytics-configuration '{"Id": "1","StorageClassAnalysis": {}}'

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Das folgende Codebeispiel zeigt die Verwendungput-bucket-cors.

AWS CLI

Das folgende Beispiel aktiviert PUTPOST, und DELETE Anfragen von www.example.com und ermöglicht GET Anfragen von einer beliebigen Domain:

aws s3api put-bucket-cors --bucket MyBucket --cors-configuration file://cors.json cors.json: { "CORSRules": [ { "AllowedOrigins": ["http://www.example.com"], "AllowedHeaders": ["*"], "AllowedMethods": ["PUT", "POST", "DELETE"], "MaxAgeSeconds": 3000, "ExposeHeaders": ["x-amz-server-side-encryption"] }, { "AllowedOrigins": ["*"], "AllowedHeaders": ["Authorization"], "AllowedMethods": ["GET"], "MaxAgeSeconds": 3000 } ] }

Das folgende Codebeispiel zeigt die Verwendungput-bucket-encryption.

AWS CLI

So konfigurieren Sie die serverseitige Verschlüsselung für einen Bucket

Im folgenden put-bucket-encryption Beispiel wird die AES256 Verschlüsselung als Standard für den angegebenen Bucket festgelegt.

aws s3api put-bucket-encryption \ --bucket my-bucket \ --server-side-encryption-configuration '{"Rules": [{"ApplyServerSideEncryptionByDefault": {"SSEAlgorithm": "AES256"}}]}'

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Das folgende Codebeispiel zeigt die Verwendungput-bucket-intelligent-tiering-configuration.

AWS CLI

Um eine S3 Intelligent-Tiering-Konfiguration in einem Bucket zu aktualisieren

Das folgende put-bucket-intelligent-tiering-configuration Beispiel aktualisiert eine S3 Intelligent-Tiering-Konfiguration mit dem Namen, in einem Bucket. ExampleConfig Bei der Konfiguration werden Objekte, auf die nicht unter dem Präfix images zugegriffen wurde, nach 90 Tagen auf Archive Access und nach 180 Tagen auf Deep Archive Access umgestellt.

aws s3api put-bucket-intelligent-tiering-configuration \ --bucket DOC-EXAMPLE-BUCKET \ --id "ExampleConfig" \ --intelligent-tiering-configuration file://intelligent-tiering-configuration.json

Inhalt von intelligent-tiering-configuration.json:

{ "Id": "ExampleConfig", "Status": "Enabled", "Filter": { "Prefix": "images" }, "Tierings": [ { "Days": 90, "AccessTier": "ARCHIVE_ACCESS" }, { "Days": 180, "AccessTier": "DEEP_ARCHIVE_ACCESS" } ] }

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Objektbesitz für einen vorhandenen Bucket festlegen im Amazon S3 S3-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungput-bucket-inventory-configuration.

AWS CLI

Beispiel 1: So legen Sie eine Inventarkonfiguration für einen Bucket fest

Das folgende put-bucket-inventory-configuration Beispiel legt einen wöchentlichen Inventarbericht im ORC -Format für den Bucket fest. my-bucket

aws s3api put-bucket-inventory-configuration \ --bucket my-bucket \ --id 1 \ --inventory-configuration '{"Destination": { "S3BucketDestination": { "AccountId": "123456789012", "Bucket": "arn:aws:s3:::my-bucket", "Format": "ORC" }}, "IsEnabled": true, "Id": "1", "IncludedObjectVersions": "Current", "Schedule": { "Frequency": "Weekly" }}'

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Beispiel 2: So legen Sie eine Inventarkonfiguration für einen Bucket fest

Das folgende put-bucket-inventory-configuration Beispiel legt einen täglich CSV formatierten Inventarbericht für den Bucket fest. my-bucket

aws s3api put-bucket-inventory-configuration \ --bucket my-bucket \ --id 2 \ --inventory-configuration '{"Destination": { "S3BucketDestination": { "AccountId": "123456789012", "Bucket": "arn:aws:s3:::my-bucket", "Format": "CSV" }}, "IsEnabled": true, "Id": "2", "IncludedObjectVersions": "Current", "Schedule": { "Frequency": "Daily" }}'

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Das folgende Codebeispiel zeigt die Verwendungput-bucket-lifecycle-configuration.

AWS CLI

Der folgende Befehl wendet eine Lebenszykluskonfiguration auf einen Bucket mit dem Namen anmy-bucket:

aws s3api put-bucket-lifecycle-configuration --bucket my-bucket --lifecycle-configuration file://lifecycle.json

Die Datei lifecycle.json ist ein JSON Dokument im aktuellen Ordner, das zwei Regeln festlegt:

{ "Rules": [ { "ID": "Move rotated logs to Glacier", "Prefix": "rotated/", "Status": "Enabled", "Transitions": [ { "Date": "2015-11-10T00:00:00.000Z", "StorageClass": "GLACIER" } ] }, { "Status": "Enabled", "Prefix": "", "NoncurrentVersionTransitions": [ { "NoncurrentDays": 2, "StorageClass": "GLACIER" } ], "ID": "Move old versions to Glacier" } ] }

Die erste Regel verschiebt Dateien mit dem Präfix am angegebenen Datum rotated nach Glacier. Die zweite Regel verschiebt alte Objektversionen nach Glacier, wenn sie nicht mehr aktuell sind. Informationen zu akzeptablen Zeitstempelformaten finden Sie im AWS CLIBenutzerhandbuch unter Parameterwerte angeben.

Das folgende Codebeispiel zeigt die Verwendungput-bucket-lifecycle.

AWS CLI

Der folgende Befehl wendet eine Lebenszykluskonfiguration auf den Bucket anmy-bucket:

aws s3api put-bucket-lifecycle --bucket my-bucket --lifecycle-configuration file://lifecycle.json

Die Datei lifecycle.json ist ein JSON Dokument im aktuellen Ordner, das zwei Regeln festlegt:

{ "Rules": [ { "ID": "Move to Glacier after sixty days (objects in logs/2015/)", "Prefix": "logs/2015/", "Status": "Enabled", "Transition": { "Days": 60, "StorageClass": "GLACIER" } }, { "Expiration": { "Date": "2016-01-01T00:00:00.000Z" }, "ID": "Delete 2014 logs in 2016.", "Prefix": "logs/2014/", "Status": "Enabled" } ] }

Die erste Regel verschiebt Dateien nach sechzig Tagen nach Amazon Glacier. Die zweite Regel löscht Dateien am angegebenen Datum aus Amazon S3. Informationen zu akzeptablen Zeitstempelformaten finden Sie unter Parameterwerte angeben im AWS CLIBenutzerhandbuch.

Jede Regel im obigen Beispiel gibt eine Richtlinie (TransitionoderExpiration) und ein Dateipräfix (Ordnername) an, für die sie gilt. Sie können auch eine Regel erstellen, die für einen gesamten Bucket gilt, indem Sie ein leeres Präfix angeben:

{ "Rules": [ { "ID": "Move to Glacier after sixty days (all objects in bucket)", "Prefix": "", "Status": "Enabled", "Transition": { "Days": 60, "StorageClass": "GLACIER" } } ] }

Das folgende Codebeispiel zeigt die Verwendungput-bucket-logging.

AWS CLI

Beispiel 1: So legen Sie die Bucket-Policy-Protokollierung fest

Im folgenden put-bucket-logging Beispiel wird die Protokollierungsrichtlinie für festgelegt MyBucket. Erteilen Sie zunächst mit dem put-bucket-policy Befehl dem Prinzipal des Logging-Dienstes die Berechtigung in Ihrer Bucket-Richtlinie.

aws s3api put-bucket-policy \ --bucket MyBucket \ --policy file://policy.json

Inhalt von policy.json:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "S3ServerAccessLogsPolicy", "Effect": "Allow", "Principal": {"Service": "logging.s3.amazonaws.com"}, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::MyBucket/Logs/*", "Condition": { "ArnLike": {"aws:SourceARN": "arn:aws:s3:::SOURCE-BUCKET-NAME"}, "StringEquals": {"aws:SourceAccount": "SOURCE-AWS-ACCOUNT-ID"} } } ] }

Um die Protokollierungsrichtlinie anzuwenden, verwenden Sieput-bucket-logging.

aws s3api put-bucket-logging \ --bucket MyBucket \ --bucket-logging-status file://logging.json

Inhalt von logging.json:

{ "LoggingEnabled": { "TargetBucket": "MyBucket", "TargetPrefix": "Logs/" } }

Der put-bucket-policy Befehl ist erforderlich, um dem Prinzipal des Protokollierungsdienstes s3:PutObject Berechtigungen zu erteilen.

Weitere Informationen finden Sie unter Amazon S3 Server Access Logging im Amazon S3 S3-Benutzerhandbuch.

Beispiel 2: So legen Sie eine Bucket-Richtlinie für die Protokollierung des Zugriffs auf nur einen einzelnen Benutzer fest

Im folgenden put-bucket-logging Beispiel wird die Protokollierungsrichtlinie für festgelegt MyBucket. Der AWS Benutzer bob@example.com hat die volle Kontrolle über die Protokolldateien, und niemand sonst hat Zugriff darauf. Erteilen Sie zunächst die S3-Erlaubnis mitput-bucket-acl.

aws s3api put-bucket-acl \ --bucket MyBucket \ --grant-write URI=http://acs.amazonaws.com/groups/s3/LogDelivery \ --grant-read-acp URI=http://acs.amazonaws.com/groups/s3/LogDelivery

Wenden Sie dann die Protokollierungsrichtlinie mit anput-bucket-logging.

aws s3api put-bucket-logging \ --bucket MyBucket \ --bucket-logging-status file://logging.json

Inhalt von logging.json:

{ "LoggingEnabled": { "TargetBucket": "MyBucket", "TargetPrefix": "MyBucketLogs/", "TargetGrants": [ { "Grantee": { "Type": "AmazonCustomerByEmail", "EmailAddress": "bob@example.com" }, "Permission": "FULL_CONTROL" } ] } }

Der put-bucket-acl Befehl ist erforderlich, um dem Protokollzustellungssystem von S3 die erforderlichen Berechtigungen (Schreib- und Lese-ACP-Berechtigungen) zu gewähren.

Weitere Informationen finden Sie unter Amazon S3 Server Access Logging im Amazon S3 Developer Guide.

Das folgende Codebeispiel zeigt die Verwendungput-bucket-metrics-configuration.

AWS CLI

Um eine Metrikkonfiguration für einen Bucket festzulegen

Im folgenden put-bucket-metrics-configuration Beispiel wird eine Metrikkonfiguration mit der ID 123 für den angegebenen Bucket festgelegt.

aws s3api put-bucket-metrics-configuration \ --bucket my-bucket \ --id 123 \ --metrics-configuration '{"Id": "123", "Filter": {"Prefix": "logs"}}'

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Das folgende Codebeispiel zeigt die Verwendungput-bucket-notification-configuration.

AWS CLI

Um die angegebenen Benachrichtigungen für einen Bucket zu aktivieren

Im folgenden put-bucket-notification-configuration Beispiel wird eine Benachrichtigungskonfiguration auf einen Bucket mit dem Namen angewendetmy-bucket. Die Datei notification.json ist ein JSON Dokument im aktuellen Ordner, das ein SNS Thema und einen zu überwachenden Ereignistyp angibt.

aws s3api put-bucket-notification-configuration \ --bucket my-bucket \ --notification-configuration file://notification.json

Inhalt von notification.json:

{ "TopicConfigurations": [ { "TopicArn": "arn:aws:sns:us-west-2:123456789012:s3-notification-topic", "Events": [ "s3:ObjectCreated:*" ] } ] }

Dem SNS Thema muss eine IAM Richtlinie beigefügt sein, die es Amazon S3 ermöglicht, darin zu veröffentlichen.

{ "Version": "2008-10-17", "Id": "example-ID", "Statement": [ { "Sid": "example-statement-ID", "Effect": "Allow", "Principal": { "Service": "s3.amazonaws.com" }, "Action": [ "SNS:Publish" ], "Resource": "arn:aws:sns:us-west-2:123456789012::s3-notification-topic", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:s3:*:*:my-bucket" } } } ] }

Das folgende Codebeispiel zeigt die Verwendungput-bucket-notification.

AWS CLI

Das wendet eine Benachrichtigungskonfiguration auf einen Bucket mit dem Namen anmy-bucket:

aws s3api put-bucket-notification --bucket my-bucket --notification-configuration file://notification.json

Bei der Datei notification.json handelt es sich um ein JSON Dokument im aktuellen Ordner, das ein SNS Thema und einen Ereignistyp angibt, die überwacht werden sollen:

{ "TopicConfiguration": { "Event": "s3:ObjectCreated:*", "Topic": "arn:aws:sns:us-west-2:123456789012:s3-notification-topic" } }

Dem SNS Thema muss eine IAM Richtlinie beigefügt sein, die es Amazon S3 ermöglicht, darin zu veröffentlichen:

{ "Version": "2008-10-17", "Id": "example-ID", "Statement": [ { "Sid": "example-statement-ID", "Effect": "Allow", "Principal": { "Service": "s3.amazonaws.com" }, "Action": [ "SNS:Publish" ], "Resource": "arn:aws:sns:us-west-2:123456789012:my-bucket", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:s3:*:*:my-bucket" } } } ] }

Das folgende Codebeispiel zeigt die Verwendungput-bucket-ownership-controls.

AWS CLI

Um die Bucket-Besitzeinstellungen eines Buckets zu aktualisieren

Im folgenden put-bucket-ownership-controls Beispiel werden die Einstellungen für den Bucket-Besitz eines Buckets aktualisiert.

aws s3api put-bucket-ownership-controls \ --bucket DOC-EXAMPLE-BUCKET \ --ownership-controls="Rules=[{ObjectOwnership=BucketOwnerEnforced}]"

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Objektbesitz für einen vorhandenen Bucket festlegen im Amazon S3 S3-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungput-bucket-policy.

AWS CLI

In diesem Beispiel können alle Benutzer alle Objekte in abrufen, MyBucketmit Ausnahme der Objekte in MySecretFolder. Es gewährt put dem Root-Benutzer des AWS Kontos auch die folgenden delete Berechtigungen1234-5678-9012:

aws s3api put-bucket-policy --bucket MyBucket --policy file://policy.json policy.json: { "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::MyBucket/*" }, { "Effect": "Deny", "Principal": "*", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::MyBucket/MySecretFolder/*" }, { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:root" }, "Action": [ "s3:DeleteObject", "s3:PutObject" ], "Resource": "arn:aws:s3:::MyBucket/*" } ] }
  • APIEinzelheiten finden Sie PutBucketPolicyin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungput-bucket-replication.

AWS CLI

Um die Replikation für einen S3-Bucket zu konfigurieren

Im folgenden put-bucket-replication Beispiel wird eine Replikationskonfiguration auf den angegebenen S3-Bucket angewendet.

aws s3api put-bucket-replication \ --bucket AWSDOC-EXAMPLE-BUCKET1 \ --replication-configuration file://replication.json

Inhalt von replication.json:

{ "Role": "arn:aws:iam::123456789012:role/s3-replication-role", "Rules": [ { "Status": "Enabled", "Priority": 1, "DeleteMarkerReplication": { "Status": "Disabled" }, "Filter" : { "Prefix": ""}, "Destination": { "Bucket": "arn:aws:s3:::AWSDOC-EXAMPLE-BUCKET2" } } ] }

Für den Ziel-Bucket muss die Versionierung aktiviert sein. Die angegebene Rolle muss über Schreibberechtigungen in den Ziel-Bucket verfügen und über eine Vertrauensbeziehung verfügen, die es Amazon S3 ermöglicht, die Rolle zu übernehmen.

Beispiel für eine Rollenberechtigungsrichtlinie:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetReplicationConfiguration", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::AWSDOC-EXAMPLE-BUCKET1" ] }, { "Effect": "Allow", "Action": [ "s3:GetObjectVersion", "s3:GetObjectVersionAcl", "s3:GetObjectVersionTagging" ], "Resource": [ "arn:aws:s3:::AWSDOC-EXAMPLE-BUCKET1/*" ] }, { "Effect": "Allow", "Action": [ "s3:ReplicateObject", "s3:ReplicateDelete", "s3:ReplicateTags" ], "Resource": "arn:aws:s3:::AWSDOC-EXAMPLE-BUCKET2/*" } ] }

Beispiel für eine Vertrauensbeziehungsrichtlinie:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "s3.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Dies ist der Thementitel im Amazon Simple Storage Service Console-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungput-bucket-request-payment.

AWS CLI

Beispiel 1: Um die Konfiguration ``requester pays`` für einen Bucket zu aktivieren

Das folgende put-bucket-request-payment Beispiel aktiviert für den angegebenen Bucket. requester pays

aws s3api put-bucket-request-payment \ --bucket my-bucket \ --request-payment-configuration '{"Payer":"Requester"}'

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Beispiel 2: Um die Konfiguration ``requester pays`` für einen Bucket zu deaktivieren

Das folgende put-bucket-request-payment Beispiel deaktiviert die Option für den angegebenen Bucket. requester pays

aws s3api put-bucket-request-payment \ --bucket my-bucket \ --request-payment-configuration '{"Payer":"BucketOwner"}'

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Das folgende Codebeispiel zeigt die Verwendungput-bucket-tagging.

AWS CLI

Der folgende Befehl wendet eine Tagging-Konfiguration auf einen Bucket mit dem Namen my-bucket an:

aws s3api put-bucket-tagging --bucket my-bucket --tagging file://tagging.json

Die Datei tagging.json ist ein JSON Dokument im aktuellen Ordner, das Tags angibt:

{ "TagSet": [ { "Key": "organization", "Value": "marketing" } ] }

Oder wenden Sie eine Tagging-Konfiguration my-bucket direkt von der Befehlszeile aus an:

aws s3api put-bucket-tagging --bucket my-bucket --tagging 'TagSet=[{Key=organization,Value=marketing}]'

Das folgende Codebeispiel zeigt die Verwendungput-bucket-versioning.

AWS CLI

Der folgende Befehl aktiviert die Versionierung für einen Bucket mit dem Namenmy-bucket:

aws s3api put-bucket-versioning --bucket my-bucket --versioning-configuration Status=Enabled

Der folgende Befehl aktiviert die Versionierung und verwendet einen MFA-Code

aws s3api put-bucket-versioning --bucket my-bucket --versioning-configuration Status=Enabled --mfa "SERIAL 123456"

Das folgende Codebeispiel zeigt die Verwendungput-bucket-website.

AWS CLI

Das wendet eine statische Website-Konfiguration auf einen Bucket mit dem Namen anmy-bucket:

aws s3api put-bucket-website --bucket my-bucket --website-configuration file://website.json

Die Datei website.json ist ein JSON Dokument im aktuellen Ordner, das Index- und Fehlerseiten für die Website angibt:

{ "IndexDocument": { "Suffix": "index.html" }, "ErrorDocument": { "Key": "error.html" } }

Das folgende Codebeispiel zeigt die Verwendungput-object-acl.

AWS CLI

Mit dem folgenden Befehl erhalten full control zwei AWS Benutzer (user1@example.com und user2@example.com) Zugriff read auf alle Benutzer:

aws s3api put-object-acl --bucket MyBucket --key file.txt --grant-full-control emailaddress=user1@example.com,emailaddress=user2@example.com --grant-read uri=http://acs.amazonaws.com/groups/global/AllUsers

Einzelheiten zu Benutzerdefiniert finden Sie unter http://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTacl.html ACLs (die ACL s3api-Befehle verwenden z. put-object-acl B. dieselbe Kurzschreibweise für Argumente).

  • APIEinzelheiten finden Sie in der Befehlsreferenz PutObjectAcl.AWS CLI

Das folgende Codebeispiel zeigt die Verwendungput-object-legal-hold.

AWS CLI

Um einem Objekt eine gesetzliche Sperre zuzuweisen

Im folgenden put-object-legal-hold Beispiel wird ein Legal Hold für das Objekt festgelegtdoc1.rtf.

aws s3api put-object-legal-hold \ --bucket my-bucket-with-object-lock \ --key doc1.rtf \ --legal-hold Status=ON

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Das folgende Codebeispiel zeigt die Verwendungput-object-lock-configuration.

AWS CLI

Um eine Objektsperrkonfiguration für einen Bucket festzulegen

Im folgenden put-object-lock-configuration Beispiel wird eine 50-tägige Objektsperre für den angegebenen Bucket eingerichtet.

aws s3api put-object-lock-configuration \ --bucket my-bucket-with-object-lock \ --object-lock-configuration '{ "ObjectLockEnabled": "Enabled", "Rule": { "DefaultRetention": { "Mode": "COMPLIANCE", "Days": 50 }}}'

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Das folgende Codebeispiel zeigt die Verwendungput-object-retention.

AWS CLI

Um eine Objektaufbewahrungskonfiguration für ein Objekt festzulegen

Im folgenden put-object-retention Beispiel wird eine Objektaufbewahrungskonfiguration für das angegebene Objekt bis zum 01.01.2025 festgelegt.

aws s3api put-object-retention \ --bucket my-bucket-with-object-lock \ --key doc1.rtf \ --retention '{ "Mode": "GOVERNANCE", "RetainUntilDate": "2025-01-01T00:00:00" }'

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Das folgende Codebeispiel zeigt die Verwendungput-object-tagging.

AWS CLI

Um ein Tag für ein Objekt festzulegen

Im folgenden put-object-tagging Beispiel wird ein Tag mit dem Schlüssel designation und confidential dem Wert für das angegebene Objekt festgelegt.

aws s3api put-object-tagging \ --bucket my-bucket \ --key doc1.rtf \ --tagging '{"TagSet": [{ "Key": "designation", "Value": "confidential" }]}'

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Im folgenden put-object-tagging Beispiel werden dem angegebenen Objekt mehrere Tagsätze zugewiesen.

aws s3api put-object-tagging \ --bucket my-bucket-example \ --key doc3.rtf \ --tagging '{"TagSet": [{ "Key": "designation", "Value": "confidential" }, { "Key": "department", "Value": "finance" }, { "Key": "team", "Value": "payroll" } ]}'

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Das folgende Codebeispiel zeigt die Verwendungput-object.

AWS CLI

Im folgenden Beispiel wird der put-object Befehl verwendet, um ein Objekt auf Amazon S3 hochzuladen:

aws s3api put-object --bucket text-content --key dir-1/my_images.tar.bz2 --body my_images.tar.bz2

Das folgende Beispiel zeigt den Upload einer Videodatei (Die Videodatei wird mithilfe der Windows-Dateisystemsyntax spezifiziert. ):

aws s3api put-object --bucket text-content --key dir-1/big-video-file.mp4 --body e:\media\videos\f-sharp-3-data-services.mp4

Weitere Informationen zum Hochladen von Objekten finden Sie unter Hochladen von Objekten im Amazon S3 Developer Guide.

Das folgende Codebeispiel zeigt die Verwendungput-public-access-block.

AWS CLI

So legen Sie die Konfiguration für den blockierten öffentlichen Zugriff für einen Bucket fest

Im folgenden put-public-access-block Beispiel wird eine restriktive Konfiguration für den öffentlichen Blockzugriff für den angegebenen Bucket festgelegt.

aws s3api put-public-access-block \ --bucket my-bucket \ --public-access-block-configuration "BlockPublicAcls=true,IgnorePublicAcls=true,BlockPublicPolicy=true,RestrictPublicBuckets=true"

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Das folgende Codebeispiel zeigt die Verwendungrb.

AWS CLI

Beispiel 1: Löschen Sie einen Bucket

Mit dem folgenden rb Befehl wird ein Bucket entfernt. In diesem Beispiel ist der Bucket des Benutzersmybucket. Beachten Sie, dass der Bucket leer sein muss, um Folgendes zu entfernen:

aws s3 rb s3://mybucket

Ausgabe:

remove_bucket: mybucket

Beispiel 2: Erzwingen Sie das Löschen eines Buckets

Der folgende rb Befehl verwendet den --force Parameter, um zuerst alle Objekte im Bucket und dann den Bucket selbst zu entfernen. In diesem Beispiel ist der Bucket des Benutzers mybucket und die Objekte darin mybucket sind test1.txt undtest2.txt:

aws s3 rb s3://mybucket \ --force

Ausgabe:

delete: s3://mybucket/test1.txt delete: s3://mybucket/test2.txt remove_bucket: mybucket
  • APIEinzelheiten finden Sie unter Rb in der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungrestore-object.

AWS CLI

Um eine Wiederherstellungsanforderung für ein Objekt zu erstellen

Im folgenden restore-object Beispiel wird das angegebene Amazon S3 Glacier-Objekt für den Bucket my-glacier-bucket für 10 Tage wiederhergestellt.

aws s3api restore-object \ --bucket my-glacier-bucket \ --key doc1.rtf \ --restore-request Days=10

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

  • APIEinzelheiten finden Sie RestoreObjectunter AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungrm.

AWS CLI

Beispiel 1: Löschen Sie ein S3-Objekt

Der folgende rm Befehl löscht ein einzelnes S3-Objekt:

aws s3 rm s3://mybucket/test2.txt

Ausgabe:

delete: s3://mybucket/test2.txt

Beispiel 2: Löscht den gesamten Inhalt eines Buckets

Der folgende rm Befehl löscht rekursiv alle Objekte unter einem angegebenen Bucket und Präfix, wenn er mit dem Parameter übergeben wird. --recursive In diesem Beispiel mybucket enthält der Bucket die Objekte test1.txt und: test2.txt

aws s3 rm s3://mybucket \ --recursive

Ausgabe:

delete: s3://mybucket/test1.txt delete: s3://mybucket/test2.txt

Beispiel 3: Löscht alle Inhalte in einem Bucket, außer ``.jpg``-Dateien

Der folgende rm Befehl löscht rekursiv alle Objekte unter einem angegebenen Bucket und Präfix, wenn er mit dem Parameter übergeben wird, wobei einige Objekte mithilfe eines Parameters ausgeschlossen --recursive werden. --exclude In diesem Beispiel mybucket enthält der Bucket die Objekte test1.txt und: test2.jpg

aws s3 rm s3://mybucket/ \ --recursive \ --exclude "*.jpg"

Ausgabe:

delete: s3://mybucket/test1.txt

Beispiel 4: Löscht den gesamten Inhalt eines Buckets, mit Ausnahme von Objekten unter dem angegebenen Präfix

Der folgende rm Befehl löscht rekursiv alle Objekte unter einem bestimmten Bucket und Präfix, wenn er mit dem Parameter übergeben wird, --recursive während alle Objekte unter einem bestimmten Präfix mithilfe eines --exclude Parameters ausgeschlossen werden. In diesem Beispiel mybucket enthält der Bucket die Objekte test1.txt und: another/test.txt

aws s3 rm s3://mybucket/ \ --recursive \ --exclude "another/*"

Ausgabe:

delete: s3://mybucket/test1.txt

Beispiel 5: Löschen Sie ein Objekt von einem S3-Zugangspunkt

Der folgende rm Befehl löscht ein einzelnes Objekt (mykey) vom Access Point (myaccesspoint). :: Der folgende rm Befehl löscht ein einzelnes Objekt (mykey) vom Access Point (myaccesspoint).

aws s3 rm s3://arn:aws:s3:us-west-2:123456789012:accesspoint/myaccesspoint/mykey

Ausgabe:

delete: s3://arn:aws:s3:us-west-2:123456789012:accesspoint/myaccesspoint/mykey
  • APIEinzelheiten finden Sie unter Rm in der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungselect-object-content.

AWS CLI

Um den Inhalt eines Amazon S3 S3-Objekts auf der Grundlage einer SQL Anweisung zu filtern

Das folgende select-object-content Beispiel filtert das Objekt my-data-file.csv mit der angegebenen SQL Anweisung und sendet die Ausgabe in eine Datei.

aws s3api select-object-content \ --bucket my-bucket \ --key my-data-file.csv \ --expression "select * from s3object limit 100" \ --expression-type 'SQL' \ --input-serialization '{"CSV": {}, "CompressionType": "NONE"}' \ --output-serialization '{"CSV": {}}' "output.csv"

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Das folgende Codebeispiel zeigt die Verwendungsync.

AWS CLI

Beispiel 1: Synchronisieren Sie alle lokalen Objekte mit dem angegebenen Bucket

Mit dem folgenden sync Befehl werden Objekte aus einem lokalen Verzeichnis mit dem angegebenen Präfix und Bucket synchronisiert, indem die lokalen Dateien auf S3 hochgeladen werden. Eine lokale Datei muss hochgeladen werden, wenn sich die Größe der lokalen Datei von der Größe des S3-Objekts unterscheidet, der Zeitpunkt der letzten Änderung der lokalen Datei neuer ist als der Zeitpunkt der letzten Änderung des S3-Objekts oder die lokale Datei nicht unter dem angegebenen Bucket und Präfix existiert. In diesem Beispiel synchronisiert der Benutzer den Bucket mybucket mit dem aktuellen lokalen Verzeichnis. Das lokale aktuelle Verzeichnis enthält die Dateien test.txt undtest2.txt. Der Bucket mybucket enthält keine Objekte.

aws s3 sync . s3://mybucket

Ausgabe:

upload: test.txt to s3://mybucket/test.txt upload: test2.txt to s3://mybucket/test2.txt

Beispiel 2: Synchronisieren Sie alle S3-Objekte aus dem angegebenen S3-Bucket mit einem anderen Bucket

Der folgende sync Befehl synchronisiert Objekte unter einem bestimmten Präfix und Bucket mit Objekten unter einem anderen angegebenen Präfix und Bucket, indem S3-Objekte kopiert werden. Ein S3-Objekt muss kopiert werden, wenn sich die Größen der beiden S3-Objekte unterscheiden, die Uhrzeit der letzten Änderung der Quelle neuer ist als die Uhrzeit der letzten Änderung des Ziels oder wenn das S3-Objekt unter dem angegebenen Bucket und dem Präfixziel nicht existiert.

In diesem Beispiel synchronisiert der Benutzer den Bucket mit mybucket dem Bucketmybucket2. Der Bucket mybucket enthält die Objekte test.txt undtest2.txt. Der Bucket mybucket2 enthält keine Objekte:

aws s3 sync s3://mybucket s3://mybucket2

Ausgabe:

copy: s3://mybucket/test.txt to s3://mybucket2/test.txt copy: s3://mybucket/test2.txt to s3://mybucket2/test2.txt

Beispiel 3: Synchronisieren Sie alle S3-Objekte aus dem angegebenen S3-Bucket mit dem lokalen Verzeichnis

Der folgende sync Befehl synchronisiert Dateien aus dem angegebenen S3-Bucket mit dem lokalen Verzeichnis, indem S3-Objekte heruntergeladen werden. Ein S3-Objekt muss heruntergeladen werden, wenn die Größe des S3-Objekts von der Größe der lokalen Datei abweicht, der Zeitpunkt der letzten Änderung des S3-Objekts neuer ist als der Zeitpunkt der letzten Änderung der lokalen Datei oder wenn das S3-Objekt nicht im lokalen Verzeichnis existiert. Beachten Sie, dass beim Herunterladen von Objekten aus S3 der Zeitpunkt der letzten Änderung der lokalen Datei auf den Zeitpunkt der letzten Änderung des S3-Objekts geändert wird. In diesem Beispiel synchronisiert der Benutzer den Bucket mybucket mit dem aktuellen lokalen Verzeichnis. Der Bucket mybucket enthält die Objekte test.txt undtest2.txt. Das aktuelle lokale Verzeichnis enthält keine Dateien:

aws s3 sync s3://mybucket .

Ausgabe:

download: s3://mybucket/test.txt to test.txt download: s3://mybucket/test2.txt to test2.txt

Beispiel 4: Synchronisieren Sie alle lokalen Objekte mit dem angegebenen Bucket und löschen Sie alle Dateien, die nicht übereinstimmen

Der folgende sync Befehl synchronisiert Objekte unter einem bestimmten Präfix und Bucket mit Dateien in einem lokalen Verzeichnis, indem die lokalen Dateien auf S3 hochgeladen werden. Aufgrund des --delete Parameters werden alle Dateien gelöscht, die unter dem angegebenen Präfix und Bucket, aber nicht im lokalen Verzeichnis vorhanden sind. In diesem Beispiel synchronisiert der Benutzer den Bucket mybucket mit dem lokalen aktuellen Verzeichnis. Das lokale aktuelle Verzeichnis enthält die Dateien test.txt undtest2.txt. Der Bucket mybucket enthält das Objekttest3.txt:

aws s3 sync . s3://mybucket \ --delete

Ausgabe:

upload: test.txt to s3://mybucket/test.txt upload: test2.txt to s3://mybucket/test2.txt delete: s3://mybucket/test3.txt

Beispiel 5: Synchronisiert alle lokalen Objekte mit Ausnahme von ``.jpg``-Dateien mit dem angegebenen Bucket

Der folgende sync Befehl synchronisiert Objekte unter einem bestimmten Präfix und Bucket mit Dateien in einem lokalen Verzeichnis, indem die lokalen Dateien auf S3 hochgeladen werden. Aufgrund des --exclude Parameters werden alle Dateien, die dem Muster entsprechen, das sowohl in S3 als auch lokal existiert, von der Synchronisierung ausgeschlossen. In diesem Beispiel synchronisiert der Benutzer den Bucket mybucket mit dem lokalen aktuellen Verzeichnis. Das lokale aktuelle Verzeichnis enthält die Dateien test.jpg undtest2.txt. Der Bucket mybucket enthält das Objekt mit test.jpg einer anderen Größe als das lokaletest.jpg:

aws s3 sync . s3://mybucket \ --exclude "*.jpg"

Ausgabe:

upload: test2.txt to s3://mybucket/test2.txt

Beispiel 6: Synchronisiert alle lokalen Objekte mit Ausnahme von ``.jpg``-Dateien mit dem angegebenen Bucket

Der folgende sync Befehl synchronisiert Dateien in einem lokalen Verzeichnis mit Objekten unter einem bestimmten Präfix und Bucket, indem S3-Objekte heruntergeladen werden. In diesem Beispiel wird der --exclude Parameter flag verwendet, um ein bestimmtes Verzeichnis und ein S3-Präfix aus dem sync Befehl auszuschließen. In diesem Beispiel synchronisiert der Benutzer das aktuelle lokale Verzeichnis mit dem Bucketmybucket. Das lokale aktuelle Verzeichnis enthält die Dateien test.txt undanother/test2.txt. Der Bucket mybucket enthält die Objekte another/test5.txt undtest1.txt:

aws s3 sync s3://mybucket/ . \ --exclude "*another/*"

Ausgabe:

download: s3://mybucket/test1.txt to test1.txt

Beispiel 7: Synchronisieren Sie alle Objekte zwischen Buckets in verschiedenen Regionen

Der folgende sync Befehl synchronisiert Dateien zwischen zwei Buckets in verschiedenen Regionen:

aws s3 sync s3://my-us-west-2-bucket s3://my-us-east-1-bucket \ --source-region us-west-2 \ --region us-east-1

Ausgabe:

download: s3://my-us-west-2-bucket/test1.txt to s3://my-us-east-1-bucket/test1.txt

Beispiel 8: Synchronisieren Sie mit einem S3-Zugriffspunkt

Der folgende sync Befehl synchronisiert das aktuelle Verzeichnis mit dem Access Point (myaccesspoint):

aws s3 sync . s3://arn:aws:s3:us-west-2:123456789012:accesspoint/myaccesspoint/

Ausgabe:

upload: test.txt to s3://arn:aws:s3:us-west-2:123456789012:accesspoint/myaccesspoint/test.txt upload: test2.txt to s3://arn:aws:s3:us-west-2:123456789012:accesspoint/myaccesspoint/test2.txt
  • APIEinzelheiten finden Sie unter Sync in der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungupload-part-copy.

AWS CLI

Um einen Teil eines Objekts hochzuladen, indem Daten aus einem vorhandenen Objekt als Datenquelle kopiert werden

Im folgenden upload-part-copy Beispiel wird ein Teil hochgeladen, indem Daten aus einem vorhandenen Objekt als Datenquelle kopiert werden.

aws s3api upload-part-copy \ --bucket my-bucket \ --key "Map_Data_June.mp4" \ --copy-source "my-bucket/copy_of_Map_Data_June.mp4" \ --part-number 1 \ --upload-id "bq0tdE1CDpWQYRPLHuNG50xAT6pA5D.m_RiBy0ggOH6b13pVRY7QjvLlf75iFdJqp_2wztk5hvpUM2SesXgrzbehG5hViyktrfANpAD0NO.Nk3XREBqvGeZF6U3ipiSm"

Ausgabe:

{ "CopyPartResult": { "LastModified": "2019-12-13T23:16:03.000Z", "ETag": "\"711470fc377698c393d94aed6305e245\"" } }

Das folgende Codebeispiel zeigt die Verwendungupload-part.

AWS CLI

Der folgende Befehl lädt den ersten Teil eines mehrteiligen Uploads hoch, der create-multipart-upload mit dem Befehl initiiert wurde:

aws s3api upload-part --bucket my-bucket --key 'multipart/01' --part-number 1 --body part01 --upload-id "dfRtDYU0WWCCcH43C3WFbkRONycyCpTJJvxu2i5GYkZljF.Yxwh6XG7WfS2vC4to6HiV6Yjlx.cph0gtNBtJ8P3URCSbB7rjxI5iEwVDmgaXZOGgkk5nVTW16HOQ5l0R"

Die body Option verwendet den Namen oder Pfad einer lokalen Datei für den Upload (verwenden Sie nicht das Präfix file://). Die Mindestteilgröße beträgt 5 MB. Die Upload-ID wird von zurückgegeben create-multipart-upload und kann auch mit abgerufen werdenlist-multipart-uploads. Bucket und Schlüssel werden angegeben, wenn Sie den mehrteiligen Upload erstellen.

Ausgabe:

{ "ETag": "\"e868e0f4719e394144ef36531ee6824c\"" }

Speichern Sie den ETag Wert jedes Teils für später. Sie sind erforderlich, um den mehrteiligen Upload abzuschließen.

  • APIEinzelheiten finden Sie UploadPartin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungwebsite.

AWS CLI

Konfigurieren Sie einen S3-Bucket als statische Website

Der folgende Befehl konfiguriert einen Bucket, der my-bucket als statische Website benannt ist. Die Option Dokument indexieren gibt die Datei anmy-bucket, zu der Besucher weitergeleitet werden, wenn sie die Website URL aufrufen. In diesem Fall befindet sich der Bucket in der Region US-West-2, sodass die Site unter angezeigt würde. http://my-bucket.s3-website-us-west-2.amazonaws.com

Alle Dateien im Bucket, die auf der statischen Site angezeigt werden, müssen so konfiguriert sein, dass Besucher sie öffnen können. Dateiberechtigungen werden getrennt von der Konfiguration der Bucket-Website konfiguriert.

aws s3 website s3://my-bucket/ \ --index-document index.html \ --error-document error.html

Informationen zum Hosten einer statischen Website in Amazon S3 finden Sie unter Hosten einer statischen Website im Amazon Simple Storage Service Developer Guide.

  • APIEinzelheiten finden Sie unter Website in der AWS CLI Befehlsreferenz.