Esempi di Amazon S3 con la AWS CLI - AWS Command Line Interface

Esempi di Amazon S3 con la AWS CLI

Gli esempi di codice seguenti mostrano come eseguire azioni e implementare scenari comuni utilizzando l’AWS Command Line Interface con Amazon S3.

Le operazioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le operazioni mostrino come richiamare le singole funzioni del servizio, è possibile visualizzarle contestualizzate negli scenari correlati.

Ogni esempio include un link al codice sorgente completo, dove è possibile trovare le istruzioni su come configurare ed eseguire il codice nel contesto.

Argomenti

Operazioni

L’esempio di codice seguente mostra come utilizzare abort-multipart-upload.

AWS CLI

Come interrompere il caricamento in più parti specificato

Il comando abort-multipart-upload seguente interrompe un caricamento in più parti per la chiave multipart/01 nel bucket amzn-s3-demo-bucket.

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

L’ID di caricamento richiesto da questo comando viene emesso da create-multipart-upload e può essere recuperato anche con list-multipart-uploads.

  • Per informazioni dettagliate sull’API, consulta AbortMultipartUpload in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare complete-multipart-upload.

AWS CLI

Il comando seguente completa un caricamento in più parti per la chiave multipart/01 nel bucket amzn-s3-demo-bucket:

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

L’ID di caricamento richiesto da questo comando viene emesso da create-multipart-upload e può essere recuperato anche con list-multipart-uploads.

L’opzione di caricamento in più parti utilizzato nel precedente comando utilizza una struttura JSON che descrive le parti del caricamento in più parti che devono essere riassemblate nel file completo. In questo esempio, il prefisso file:// è usato per caricare la struttura JSON da un file nella cartella locale chiamato mpustruct.

mpustruct:

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

Il valore ETag per ogni parte del caricamento viene restituito ogni volta che si carica una parte utilizzando il comando upload-part. Tale valore può essere recuperato anche chiamando list-parts o venire calcolato utilizzando il checksum MD5 di ciascuna parte.

Output:

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

L’esempio di codice seguente mostra come utilizzare copy-object.

AWS CLI

Il seguente comando copia un oggetto da bucket-1 a bucket-2.

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

Output:

{ "CopyObjectResult": { "LastModified": "2015-11-10T01:07:25.000Z", "ETag": "\"589c8b79c230a6ecd5a7e1d040a9a030\"" }, "VersionId": "YdnYvTCVDqRRFA.NFJjy36p0hxifMlkA" }
  • Per informazioni dettagliate, consulta CopyObject nella Documentazione di riferimento del comando AWS CLI.

L’esempio di codice seguente mostra come utilizzare cp.

AWS CLI

Esempio 1: copia di un file locale su S3

Il comando cp seguente copia un singolo file in un bucket e una chiave specificati:

aws s3 cp test.txt s3://amzn-s3-demo-bucket/test2.txt

Output:

upload: test.txt to s3://amzn-s3-demo-bucket/test2.txt

Esempio 2: copia di un file locale su S3 con una data di scadenza

Il comando cp seguente copia un singolo file in un bucket e in una chiave specificati che scadono al timestamp ISO 8601 specificato:

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

Output:

upload: test.txt to s3://amzn-s3-demo-bucket/test2.txt

Esempio 3: copia di un file da S3 a S3

Il comando cp seguente copia un singolo oggetto s3 in un bucket e una chiave specificati:

aws s3 cp s3://amzn-s3-demo-bucket/test.txt s3://amzn-s3-demo-bucket/test2.txt

Output:

copy: s3://amzn-s3-demo-bucket/test.txt to s3://amzn-s3-demo-bucket/test2.txt

Esempio 4: copia di un oggetto S3 in un file locale

Il comando cp seguente copia localmente un singolo oggetto in un file specificato:

aws s3 cp s3://amzn-s3-demo-bucket/test.txt test2.txt

Output:

download: s3://amzn-s3-demo-bucket/test.txt to test2.txt

Esempio 5: copia di un oggetto S3 da un bucket a un altro

Il comando cp seguente copia un singolo oggetto in un bucket specificato mantenendo il nome originale:

aws s3 cp s3://amzn-s3-demo-bucket/test.txt s3://amzn-s3-demo-bucket2/

Output:

copy: s3://amzn-s3-demo-bucket/test.txt to s3://amzn-s3-demo-bucket2/test.txt

Esempio 6: copia in modo ricorsivo di oggetti S3 in una directory locale

Se passato con il parametro--recursive, il comando cp seguente copia in modo ricorsivo tutti gli oggetti con un prefisso e un bucket specificati in una directory specificata. In questo esempio, il bucket amzn-s3-demo-bucket contiene gli oggetti test1.txt e test2.txt:

aws s3 cp s3://amzn-s3-demo-bucket . \ --recursive

Output:

download: s3://amzn-s3-demo-bucket/test1.txt to test1.txt download: s3://amzn-s3-demo-bucket/test2.txt to test2.txt

Esempio 7: copia in modo ricorsivo di file locali su S3

Se passato con il parametro--recursive, il comando cp seguente copia in modo ricorsivo tutti i file in una directory specificata in un bucket e un prefisso specificati, escludendo alcuni file tramite un parametro --exclude. In questo esempio, la directory myDir contiene i file test1.txt e test2.jpg:

aws s3 cp myDir s3://amzn-s3-demo-bucket/ \ --recursive \ --exclude "*.jpg"

Output:

upload: myDir/test1.txt to s3://amzn-s3-demo-bucket/test1.txt

Esempio 8: copia in modo ricorsivo di oggetti S3 in un altro bucket

Se passato con il parametro--recursive, il comando cp seguente copia in modo ricorsivo tutti gli oggetti contenuti in un bucket specificato in un altro bucket, escludendo alcuni oggetti tramite un parametro --exclude. In questo esempio, il bucket amzn-s3-demo-bucket contiene gli oggetti test1.txt e another/test1.txt:

aws s3 cp s3://amzn-s3-demo-bucket/ s3://amzn-s3-demo-bucket2/ \ --recursive \ --exclude "another/*"

Output:

copy: s3://amzn-s3-demo-bucket/test1.txt to s3://amzn-s3-demo-bucket2/test1.txt

Puoi combinare le opzioni --exclude e --include per copiare solo gli oggetti che corrispondono a un modello, escludendo tutti gli altri:

aws s3 cp s3://amzn-s3-demo-bucket/logs/ s3://amzn-s3-demo-bucket2/logs/ \ --recursive \ --exclude "*" \ --include "*.log"

Output:

copy: s3://amzn-s3-demo-bucket/logs/test/test.log to s3://amzn-s3-demo-bucket2/logs/test/test.log copy: s3://amzn-s3-demo-bucket/logs/test3.log to s3://amzn-s3-demo-bucket2/logs/test3.log

Esempio 9: impostazione della lista di controllo degli accessi (ACL) durante la copia di un oggetto S3

Il comando cp seguente copia un singolo oggetto in un bucket e in una chiave specificati mentre si imposta l’ACL su public-read-write:

aws s3 cp s3://amzn-s3-demo-bucket/test.txt s3://amzn-s3-demo-bucket/test2.txt \ --acl public-read-write

Output:

copy: s3://amzn-s3-demo-bucket/test.txt to s3://amzn-s3-demo-bucket/test2.txt

Nota: se stai utilizzando l’opzione --acl, assicurati che tutte le policy IAM associate includano l’azione "s3:PutObjectAcl":

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

Output:

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

Esempio 10: concessione delle autorizzazioni per un oggetto S3

Il comando cp seguente illustra l’utilizzo dell’opzione --grants per concedere l’accesso in lettura a tutti gli utenti identificati dall’URI e il controllo completo a un utente specifico identificato dal relativo ID canonico:

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

Output:

upload: file.txt to s3://amzn-s3-demo-bucket/file.txt

Esempio 11: caricamento di un flusso di file locale su S3

PowerShell può modificare la codifica dell’input reindirizzato o aggiungere un CRLF a tale input.

Il comando cp seguente carica un flusso di file locale dall’input standard a un bucket e una chiave specificati:

aws s3 cp - s3://amzn-s3-demo-bucket/stream.txt

Esempio 12: caricamento di un flusso di file locale di dimensioni superiori a 50 GB su S3

Il comando cp seguente carica un flusso di file locale da 51 GB dall’input standard a un bucket e una chiave specificati. È necessario fornire l’opzione --expected-size oppure il caricamento potrebbe non riuscire quando raggiunge il limite predefinito di 10.000 parti:

aws s3 cp - s3://amzn-s3-demo-bucket/stream.txt --expected-size 54760833024

Esempio 13: download di un oggetto S3 come flusso di file locale

PowerShell può modificare la codifica dell’output reindirizzato oppure può aggiungere un CRLF a tale output.

Il comando cp seguente scarica un oggetto S3 in locale come flusso verso l’output standard. Il download come flusso non è attualmente compatibile con il parametro --recursive:

aws s3 cp s3://amzn-s3-demo-bucket/stream.txt -

Esempio 14: caricamento su un punto di accesso S3

Il comando cp seguente carica un singolo file (mydoc.txt) nel punto di accesso (myaccesspoint) in corrispondenza della chiave (mykey):

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

Output:

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

Esempio 15: download da un punto di accesso S3

Il comando cp seguente scarica un singolo oggetto (mykey) dal punto di accesso (myaccesspoint) al file locale (mydoc.txt):

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

Output:

download: s3://arn:aws:s3:us-west-2:123456789012:accesspoint/myaccesspoint/mykey to mydoc.txt
  • Per informazioni dettagliate sull’API, consulta Cp in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare create-bucket.

AWS CLI

Esempio 1: per creare un bucket

Negli esempi seguenti create-bucket crea un bucket denominato amzn-s3-demo-bucket:

aws s3api create-bucket \ --bucket amzn-s3-demo-bucket \ --region us-east-1

Output:

{ "Location": "/amzn-s3-demo-bucket" }

Per ulteriori informazioni, consulta Creazione di un bucket nella Guida per l’utente di Amazon S3.

Esempio 2: per creare un bucket con il proprietario impostato

L’esempio create-bucket seguente crea un bucket denominato amzn-s3-demo-bucket che utilizza l’impostazione Proprietario del bucket applicato per la proprietà degli oggetti S3.

aws s3api create-bucket \ --bucket amzn-s3-demo-bucket \ --region us-east-1 \ --object-ownership BucketOwnerEnforced

Output:

{ "Location": "/amzn-s3-demo-bucket" }

Per ulteriori informazioni, consulta Controlling ownership of objects and disabling ACLs (Controllo della proprietà degli oggetti e disabilitazione degli ACL) nella Guida per l'utente di Amazon S3.

Esempio 3: per creare un bucket al di fuori della Regione ``us-east-1``

Nell’esempio seguente create-bucket crea un bucket denominato amzn-s3-demo-bucket nella Regione eu-west-1. Le Regioni esterne a us-east-1 richiedono la specifica del valore appropriato per LocationConstraint affinché il bucket venga creato nella Regione desiderata.

aws s3api create-bucket \ --bucket amzn-s3-demo-bucket \ --region eu-west-1 \ --create-bucket-configuration LocationConstraint=eu-west-1

Output:

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

Per ulteriori informazioni, consulta Creazione di un bucket nella Guida per l’utente di Amazon S3.

  • Per informazioni dettagliate sull’API, consulta CreateBucket in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare create-multipart-upload.

AWS CLI

Il seguente comando completa un caricamento in più parti nel bucket amzn-s3-demo-bucket con la chiave multipart/01.

aws s3api create-multipart-upload --bucket amzn-s3-demo-bucket --key 'multipart/01'

Output:

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

Il nome del file completato sarà 01, disponibile in una cartella denominata multipart nel bucket amzn-s3-demo-bucket. Salva l’ID di caricamento, la chiave e il nome del bucket da utilizzare con il comando upload-part.

L’esempio di codice seguente mostra come utilizzare delete-bucket-analytics-configuration.

AWS CLI

Come eliminare una configurazione di analisi per un bucket

L’esempio delete-bucket-analytics-configuration seguente rimuove la configurazione di analisi per il bucket e l’ID specificati.

aws s3api delete-bucket-analytics-configuration \ --bucket amzn-s3-demo-bucket \ --id 1

Questo comando non produce alcun output.

L’esempio di codice seguente mostra come utilizzare delete-bucket-cors.

AWS CLI

Il seguente comando elimina una configurazione di condivisione di risorse di origine incrociata (CORS) da un bucket denominato amzn-s3-demo-bucket.

aws s3api delete-bucket-cors --bucket amzn-s3-demo-bucket
  • Per informazioni dettagliate sull’API, consulta DeleteBucketCors in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare delete-bucket-encryption.

AWS CLI

Come eliminare la configurazione di crittografia lato server di un bucket

L’esempio delete-bucket-encryption seguente elimina la configurazione di crittografia lato server del bucket specificato.

aws s3api delete-bucket-encryption \ --bucket amzn-s3-demo-bucket

Questo comando non produce alcun output.

L’esempio di codice seguente mostra come utilizzare delete-bucket-intelligent-tiering-configuration.

AWS CLI

Come rimuovere una configurazione S3 Intelligent-Tiering su un bucket

L’esempio delete-bucket-intelligent-tiering-configuration seguente rimuove una configurazione S3 Intelligent-Tiering, denominata ExampleConfig, su un bucket.

aws s3api delete-bucket-intelligent-tiering-configuration \ --bucket amzn-s3-demo-bucket \ --id ExampleConfig

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Utilizzare S3 Intelligent-Tiering nella Guida per l’utente di Amazon S3.

L’esempio di codice seguente mostra come utilizzare delete-bucket-inventory-configuration.

AWS CLI

Come eliminare la configurazione di inventario di un bucket

L’esempio delete-bucket-inventory-configuration seguente elimina la configurazione dell’inventario con ID 1 per il bucket specificato.

aws s3api delete-bucket-inventory-configuration \ --bucket amzn-s3-demo-bucket \ --id 1

Questo comando non produce alcun output.

L’esempio di codice seguente mostra come utilizzare delete-bucket-lifecycle.

AWS CLI

Il seguente comando elimina una configurazione del ciclo di vita da un bucket denominato amzn-s3-demo-bucket.

aws s3api delete-bucket-lifecycle --bucket amzn-s3-demo-bucket

L’esempio di codice seguente mostra come utilizzare delete-bucket-metrics-configuration.

AWS CLI

Come eliminare una configurazione delle metriche per un bucket

L’esempio delete-bucket-metrics-configuration seguente rimuove la configurazione delle metriche per il bucket e l’ID specificati.

aws s3api delete-bucket-metrics-configuration \ --bucket amzn-s3-demo-bucket \ --id 123

Questo comando non produce alcun output.

L’esempio di codice seguente mostra come utilizzare delete-bucket-ownership-controls.

AWS CLI

Come rimuovere le impostazioni di proprietà del bucket di un bucket

L’esempio delete-bucket-ownership-controls seguente rimuove le impostazioni di proprietà del bucket di un bucket.

aws s3api delete-bucket-ownership-controls \ --bucket amzn-s3-demo-bucket

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Impostazione di Object Ownership su un bucket esistente nella Guida per l’utente di Amazon S3.

L’esempio di codice seguente mostra come utilizzare delete-bucket-policy.

AWS CLI

Il seguente comando elimina una policy di bucket denominata amzn-s3-demo-bucket.

aws s3api delete-bucket-policy --bucket amzn-s3-demo-bucket
  • Per informazioni dettagliate sull’API, consulta DeleteBucketPolicy in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare delete-bucket-replication.

AWS CLI

Il seguente comando elimina una configurazione di replica da un bucket denominato amzn-s3-demo-bucket.

aws s3api delete-bucket-replication --bucket amzn-s3-demo-bucket

L’esempio di codice seguente mostra come utilizzare delete-bucket-tagging.

AWS CLI

Il seguente comando elimina una configurazione di tagging da un bucket denominato amzn-s3-demo-bucket.

aws s3api delete-bucket-tagging --bucket amzn-s3-demo-bucket
  • Per informazioni dettagliate sull’API, consulta DeleteBucketTagging in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare delete-bucket-website.

AWS CLI

Il seguente comando elimina una configurazione di siti web da un bucket denominato amzn-s3-demo-bucket.

aws s3api delete-bucket-website --bucket amzn-s3-demo-bucket
  • Per informazioni dettagliate sull’API, consulta DeleteBucketWebsite in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare delete-bucket.

AWS CLI

Il seguente comando elimina un bucket denominato amzn-s3-demo-bucket.

aws s3api delete-bucket --bucket amzn-s3-demo-bucket --region us-east-1
  • Per informazioni dettagliate sull’API, consulta DeleteBucket in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare delete-object-tagging.

AWS CLI

Come eliminare i set di tag di un oggetto

L’esempio delete-object-tagging seguente elimina il tag con la chiave specificata dall’oggetto doc1.rtf.

aws s3api delete-object-tagging \ --bucket amzn-s3-demo-bucket \ --key doc1.rtf

Questo comando non produce alcun output.

  • Per informazioni dettagliate sull’API, consulta DeleteObjectTagging in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare delete-object.

AWS CLI

Il seguente comando elimina un oggetto denominato test.txt da un bucket denominato amzn-s3-demo-bucket.

aws s3api delete-object --bucket amzn-s3-demo-bucket --key test.txt

Se il controllo delle versioni del bucket è abilitato, l’output conterrà l’ID della versione del contrassegno di eliminazione.

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

Per ulteriori informazioni sull’eliminazione degli oggetti, consulta “Eliminazione di oggetti” nella Guida per gli sviluppatori di Amazon S3.

  • Per informazioni dettagliate sull’API, consulta DeleteObject in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare delete-objects.

AWS CLI

Il seguente comando elimina un oggetto da un bucket denominato amzn-s3-demo-bucket.

aws s3api delete-objects --bucket amzn-s3-demo-bucket --delete file://delete.json

delete.json è un documento JSON nella directory corrente che specifica l’oggetto da eliminare.

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

Output:

{ "Deleted": [ { "DeleteMarkerVersionId": "mYAT5Mc6F7aeUL8SS7FAAqUPO1koHwzU", "Key": "test1.txt", "DeleteMarker": true } ] }
  • Per informazioni dettagliate sull’API, consulta DeleteObjects in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare delete-public-access-block.

AWS CLI

Come eliminare la configurazione di blocco dell’accesso pubblico per un bucket

L’esempio delete-public-access-block seguente rimuove la configurazione di blocco dell’accesso pubblico nel bucket specificato.

aws s3api delete-public-access-block \ --bucket amzn-s3-demo-bucket

Questo comando non produce alcun output.

L’esempio di codice seguente mostra come utilizzare get-bucket-accelerate-configuration.

AWS CLI

Come recuperare la configurazione di accelerazione di un bucket

L’esempio get-bucket-accelerate-configuration seguente recupera la configurazione di accelerazione per il bucket specificato.

aws s3api get-bucket-accelerate-configuration \ --bucket amzn-s3-demo-bucket

Output:

{ "Status": "Enabled" }

L’esempio di codice seguente mostra come utilizzare get-bucket-acl.

AWS CLI

Il seguente comando recupera una lista di controllo degli accessi (ACL) per un bucket denominato amzn-s3-demo-bucket.

aws s3api get-bucket-acl --bucket amzn-s3-demo-bucket

Output:

{ "Owner": { "DisplayName": "my-username", "ID": "7009a8971cd538e11f6b6606438875e7c86c5b672f46db45460ddcd087d36c32" }, "Grants": [ { "Grantee": { "DisplayName": "my-username", "ID": "7009a8971cd538e11f6b6606438875e7c86c5b672f46db45460ddcd087d36c32" }, "Permission": "FULL_CONTROL" } ] }
  • Per informazioni dettagliate sull’API, consulta GetBucketAcl in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare get-bucket-analytics-configuration.

AWS CLI

Come recuperare la configurazione di analisi per un bucket con un ID specifico

L’esempio get-bucket-analytics-configuration seguente visualizza la configurazione di analisi per il bucket e l’ID specificati.

aws s3api get-bucket-analytics-configuration \ --bucket amzn-s3-demo-bucket \ --id 1

Output:

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

L’esempio di codice seguente mostra come utilizzare get-bucket-cors.

AWS CLI

Il seguente comando recupera una configurazione di condivisione di risorse di origine incrociata (CORS) da un bucket denominato amzn-s3-demo-bucket.

aws s3api get-bucket-cors --bucket amzn-s3-demo-bucket

Output:

{ "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": [ "*" ] } ] }
  • Per informazioni dettagliate sull’API, consulta GetBucketCors in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare get-bucket-encryption.

AWS CLI

Come recuperare la configurazione di crittografia lato server di un bucket

L’esempio get-bucket-encryption seguente restituisce la configurazione di crittografia lato server per il bucket amzn-s3-demo-bucket.

aws s3api get-bucket-encryption \ --bucket amzn-s3-demo-bucket

Output:

{ "ServerSideEncryptionConfiguration": { "Rules": [ { "ApplyServerSideEncryptionByDefault": { "SSEAlgorithm": "AES256" } } ] } }
  • Per informazioni dettagliate sull’API, consulta GetBucketEncryption in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare get-bucket-intelligent-tiering-configuration.

AWS CLI

Come rimuovere una configurazione S3 Intelligent-Tiering su un bucket

L’esempio get-bucket-intelligent-tiering-configuration seguente rimuove una configurazione S3 Intelligent-Tiering, denominata ExampleConfig, su un bucket.

aws s3api get-bucket-intelligent-tiering-configuration \ --bucket amzn-s3-demo-bucket \ --id ExampleConfig

Output:

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

Per ulteriori informazioni, consulta Utilizzare S3 Intelligent-Tiering nella Guida per l’utente di Amazon S3.

L’esempio di codice seguente mostra come utilizzare get-bucket-inventory-configuration.

AWS CLI

Come recuperare la configurazione di inventario per un bucket

L’esempio get-bucket-inventory-configuration seguente recupera la configurazione dell’inventario con ID 1 per il bucket specificato.

aws s3api get-bucket-inventory-configuration \ --bucket amzn-s3-demo-bucket \ --id 1

Output:

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

L’esempio di codice seguente mostra come utilizzare get-bucket-lifecycle-configuration.

AWS CLI

Il seguente comando recupera una configurazione del ciclo di vita per un bucket denominato amzn-s3-demo-bucket.

aws s3api get-bucket-lifecycle-configuration --bucket amzn-s3-demo-bucket

Output:

{ "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" } ] }

L’esempio di codice seguente mostra come utilizzare get-bucket-lifecycle.

AWS CLI

Il seguente comando recupera una configurazione del ciclo di vita per un bucket denominato amzn-s3-demo-bucket.

aws s3api get-bucket-lifecycle --bucket amzn-s3-demo-bucket

Output:

{ "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" } ] }
  • Per informazioni dettagliate sull’API, consulta GetBucketLifecycle in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare get-bucket-location.

AWS CLI

Il seguente comando recupera il vincolo di posizione per un bucket denominato amzn-s3-demo-bucket, se esiste un vincolo.

aws s3api get-bucket-location --bucket amzn-s3-demo-bucket

Output:

{ "LocationConstraint": "us-west-2" }
  • Per informazioni dettagliate sull’API, consulta GetBucketLocation in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare get-bucket-logging.

AWS CLI

Come recuperare lo stato della registrazione di log di un bucket

L’esempio get-bucket-logging seguente recupera lo stato di registrazione per il bucket specificato.

aws s3api get-bucket-logging \ --bucket amzn-s3-demo-bucket

Output:

{ "LoggingEnabled": { "TargetPrefix": "", "TargetBucket": "amzn-s3-demo-bucket-logs" } }
  • Per informazioni dettagliate sull’API, consulta GetBucketLogging in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare get-bucket-metrics-configuration.

AWS CLI

Come recuperare la configurazione delle metriche per un bucket con un ID specifico

L’esempio get-bucket-metrics-configuration seguente visualizza la configurazione delle metriche per il bucket e l’ID specificati.

aws s3api get-bucket-metrics-configuration \ --bucket amzn-s3-demo-bucket \ --id 123

Output:

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

L’esempio di codice seguente mostra come utilizzare get-bucket-notification-configuration.

AWS CLI

Il seguente comando recupera la configurazione di notifica per un bucket denominato amzn-s3-demo-bucket.

aws s3api get-bucket-notification-configuration --bucket amzn-s3-demo-bucket

Output:

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

L’esempio di codice seguente mostra come utilizzare get-bucket-notification.

AWS CLI

Il seguente comando recupera la configurazione di notifica per un bucket denominato amzn-s3-demo-bucket.

aws s3api get-bucket-notification --bucket amzn-s3-demo-bucket

Output:

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

L’esempio di codice seguente mostra come utilizzare get-bucket-ownership-controls.

AWS CLI

Come recuperare le impostazioni di proprietà del bucket di un bucket

L’esempio get-bucket-ownership-controls seguente recupera le impostazioni di proprietà del bucket di un bucket.

aws s3api get-bucket-ownership-controls \ --bucket amzn-s3-demo-bucket

Output:

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

Per maggiori informazioni, consulta Visualizzare l’impostazione di Object Ownership per un bucket S3 nella Guida per l’utente di Amazon S3.

L’esempio di codice seguente mostra come utilizzare get-bucket-policy-status.

AWS CLI

Come recuperare lo stato delle policy per un bucket, che indica se il bucket è pubblico

L’esempio get-bucket-policy-status seguente recupera lo stato della policy per il bucket amzn-s3-demo-bucket.

aws s3api get-bucket-policy-status \ --bucket amzn-s3-demo-bucket

Output:

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

L’esempio di codice seguente mostra come utilizzare get-bucket-policy.

AWS CLI

Il seguente comando recupera la policy di bucket per un bucket denominato amzn-s3-demo-bucket.

aws s3api get-bucket-policy --bucket amzn-s3-demo-bucket

Output:

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

Ottenere e implementare una policy di bucket L’esempio seguente mostra come scaricare una policy di bucket di Amazon S3, apportare modifiche al file e quindi utilizzare put-bucket-policy per applicare la policy di bucket modificata. Per scaricare la policy di bucket in un file, è possibile eseguire:

aws s3api get-bucket-policy --bucket amzn-s3-demo-bucket --query Policy --output text > policy.json

Sarà quindi possibile modificare il file policy.json in base alle esigenze. Sarà infine possibile riapplicare la policy modificata al bucket S3 eseguendo il file

policy.json, se necessario. Sarà infine possibile riapplicare la policy modificata al bucket S3 eseguendo il file

se necessario. Sarà infine possibile riapplicare la policy modificata al bucket S3 eseguendo il file

aws s3api put-bucket-policy --bucket amzn-s3-demo-bucket --policy file://policy.json
  • Per informazioni dettagliate sull’API, consulta GetBucketPolicy in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare get-bucket-replication.

AWS CLI

Il seguente comando recupera una configurazione di replica per un bucket denominato amzn-s3-demo-bucket:

aws s3api get-bucket-replication --bucket amzn-s3-demo-bucket

Output:

{ "ReplicationConfiguration": { "Rules": [ { "Status": "Enabled", "Prefix": "", "Destination": { "Bucket": "arn:aws:s3:::amzn-s3-demo-bucket-backup", "StorageClass": "STANDARD" }, "ID": "ZmUwNzE4ZmQ4tMjVhOS00MTlkLOGI4NDkzZTIWJjNTUtYTA1" } ], "Role": "arn:aws:iam::123456789012:role/s3-replication-role" } }
  • Per informazioni dettagliate sull’API, consulta GetBucketReplication in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare get-bucket-request-payment.

AWS CLI

Come recuperare la configurazione del pagamento delle richieste per un bucket

L’esempio get-bucket-request-payment seguente recupera la configurazione dei pagamenti a carico del richiedente per il bucket specificato.

aws s3api get-bucket-request-payment \ --bucket amzn-s3-demo-bucket

Output:

{ "Payer": "BucketOwner" }

L’esempio di codice seguente mostra come utilizzare get-bucket-tagging.

AWS CLI

Il seguente comando recupera una configurazione di tagging per un bucket denominato amzn-s3-demo-bucket.

aws s3api get-bucket-tagging --bucket amzn-s3-demo-bucket

Output:

{ "TagSet": [ { "Value": "marketing", "Key": "organization" } ] }
  • Per informazioni dettagliate sull’API, consulta GetBucketTagging in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare get-bucket-versioning.

AWS CLI

Il seguente comando recupera una configurazione di controllo delle versioni per un bucket denominato amzn-s3-demo-bucket.

aws s3api get-bucket-versioning --bucket amzn-s3-demo-bucket

Output:

{ "Status": "Enabled" }
  • Per informazioni dettagliate sull’API, consulta GetBucketVersioning in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare get-bucket-website.

AWS CLI

Il seguente comando recupera una configurazione di siti web statici per un bucket denominato amzn-s3-demo-bucket.

aws s3api get-bucket-website --bucket amzn-s3-demo-bucket

Output:

{ "IndexDocument": { "Suffix": "index.html" }, "ErrorDocument": { "Key": "error.html" } }
  • Per informazioni dettagliate sull’API, consulta GetBucketWebsite in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare get-object-acl.

AWS CLI

Il seguente comando recupera una lista di controllo degli accessi (ACL) per un oggetto in un bucket denominato amzn-s3-demo-bucket.

aws s3api get-object-acl --bucket amzn-s3-demo-bucket --key index.html

Output:

{ "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" } ] }
  • Per informazioni dettagliate sull’API, consulta GetObjectAcl in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare get-object-attributes.

AWS CLI

Come recuperare i metadati da un oggetto senza restituire l’oggetto stesso

L’esempio get-object-attributes seguente recupera i metadati dall’oggetto doc1.rtf.

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

Output:

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

Per ulteriori informazioni, consulta GetObjectAttributes nella documentazione di riferimento dell’API Amazon S3.

  • Per informazioni dettagliate sull’API, consulta GetObjectAttributes in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare get-object-legal-hold.

AWS CLI

Come recuperare lo stato relativo alla conservazione a fini legali di un oggetto

L’esempio get-object-legal-hold seguente recupera lo stato relativo alla conservazione a fini legali per l’oggetto specificato.

aws s3api get-object-legal-hold \ --bucket amzn-s3-demo-bucket-with-object-lock \ --key doc1.rtf

Output:

{ "LegalHold": { "Status": "ON" } }
  • Per informazioni dettagliate sull’API, consulta GetObjectLegalHold in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare get-object-lock-configuration.

AWS CLI

Come recuperare la configurazione Object Lock di un bucket

L’esempio get-object-lock-configuration seguente recupera la configurazione di Object Lock per il bucket specificato.

aws s3api get-object-lock-configuration \ --bucket amzn-s3-demo-bucket-with-object-lock

Output:

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

L’esempio di codice seguente mostra come utilizzare get-object-retention.

AWS CLI

Come recuperare la configurazione di conservazione degli oggetti per un oggetto

L’esempio get-object-retention seguente recupera la configurazione di conservazione degli oggetti per l’oggetto specificato.

aws s3api get-object-retention \ --bucket amzn-s3-demo-bucket-with-object-lock \ --key doc1.rtf

Output:

{ "Retention": { "Mode": "GOVERNANCE", "RetainUntilDate": "2025-01-01T00:00:00.000Z" } }
  • Per informazioni dettagliate sull’API, consulta GetObjectRetention in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare get-object-tagging.

AWS CLI

Come recuperare i tag associati a un oggetto

L’esempio get-object-tagging seguente recupera i valori della chiave specificata dall’oggetto specificato.

aws s3api get-object-tagging \ --bucket amzn-s3-demo-bucket \ --key doc1.rtf

Output:

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

L’esempio get-object-tagging seguente tenta di recuperare i set di tag dell’oggetto doc2.rtf, che non ha tag.

aws s3api get-object-tagging \ --bucket amzn-s3-demo-bucket \ --key doc2.rtf

Output:

{ "TagSet": [] }

L’esempio get-object-tagging seguente recupera i set di tag dell’oggetto doc3.rtf, che ha più tag.

aws s3api get-object-tagging \ --bucket amzn-s3-demo-bucket \ --key doc3.rtf

Output:

{ "TagSet": [ { "Value": "confidential", "Key": "designation" }, { "Value": "finance", "Key": "department" }, { "Value": "payroll", "Key": "team" } ] }
  • Per informazioni dettagliate sull’API, consulta GetObjectTagging in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare get-object-torrent.

AWS CLI

Il seguente comando crea un file torrent per un oggetto in un bucket denominato amzn-s3-demo-bucket.

aws s3api get-object-torrent --bucket amzn-s3-demo-bucket --key large-video-file.mp4 large-video-file.torrent

Il file torrent viene salvato in locale nella cartella corrente. Nota: il nome del file di output (large-video-file.torrent) è specificato senza un nome di opzione e deve essere l’ultimo argomento del comando.

  • Per informazioni dettagliate sull’API, consulta GetObjectTorrent in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare get-object.

AWS CLI

Nell’esempio seguente si utilizza il comando get-object per scaricare un oggetto da Amazon S3.

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

Nota: il parametro outfile è specificato senza un nome di opzione come “--outfile”. Il nome del file di output deve essere l’ultimo parametro del comando.

L’esempio seguente dimostra l’utilizzo di --range per scaricare un intervallo di byte specifico da un oggetto. Tieni presente che gli intervalli di byte devono essere preceduti dal prefisso “bytes=”:

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

Per ulteriori informazioni sul recupero degli oggetti, consulta “Recupero degli oggetti” nella Guida per gli sviluppatori di Amazon S3.

  • Per informazioni dettagliate sull’API, consulta GetObject in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare get-public-access-block.

AWS CLI

Come impostare o modificare la configurazione di blocco dell’accesso pubblico per un bucket

L’esempio get-public-access-block seguente visualizza la configurazione di blocco dell’accesso pubblico per il bucket specificato.

aws s3api get-public-access-block \ --bucket amzn-s3-demo-bucket

Output:

{ "PublicAccessBlockConfiguration": { "IgnorePublicAcls": true, "BlockPublicPolicy": true, "BlockPublicAcls": true, "RestrictPublicBuckets": true } }
  • Per informazioni dettagliate sull’API, consulta GetPublicAccessBlock in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare head-bucket.

AWS CLI

Il seguente comando verifica l’accesso a un bucket denominato amzn-s3-demo-bucket.

aws s3api head-bucket --bucket amzn-s3-demo-bucket

Se il bucket esiste e si dispone dell’accesso a esso, non viene restituito alcun output. In caso contrario, verrà visualizzato un messaggio di errore. Per esempio:

A client error (404) occurred when calling the HeadBucket operation: Not Found
  • Per informazioni dettagliate sull’API, consulta HeadBucket in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare head-object.

AWS CLI

Il seguente comando recupera i metadati di un oggetto in un bucket denominato amzn-s3-demo-bucket.

aws s3api head-object --bucket amzn-s3-demo-bucket --key index.html

Output:

{ "AcceptRanges": "bytes", "ContentType": "text/html", "LastModified": "Thu, 16 Apr 2015 18:19:14 GMT", "ContentLength": 77, "VersionId": "null", "ETag": "\"30a6ec7e1a9ad79c203d05a589c8b400\"", "Metadata": {} }
  • Per informazioni dettagliate sull’API, consulta HeadObject in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare list-bucket-analytics-configurations.

AWS CLI

Come recuperare un elenco di configurazioni di analisi per un bucket

L’esempio list-bucket-analytics-configurations seguente recupera un elenco di configurazioni di analisi per il bucket specificato.

aws s3api list-bucket-analytics-configurations \ --bucket amzn-s3-demo-bucket

Output:

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

L’esempio di codice seguente mostra come utilizzare list-bucket-intelligent-tiering-configurations.

AWS CLI

Come recuperare tutte le configurazioni S3 Intelligent-Tiering su un bucket

L’esempio list-bucket-intelligent-tiering-configurations seguente recupera tutta la configurazione S3 Intelligent-Tiering su un bucket.

aws s3api list-bucket-intelligent-tiering-configurations \ --bucket amzn-s3-demo-bucket

Output:

{ "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" } ] } ] }

Per ulteriori informazioni, consulta Utilizzare S3 Intelligent-Tiering nella Guida per l’utente di Amazon S3.

L’esempio di codice seguente mostra come utilizzare list-bucket-inventory-configurations.

AWS CLI

Come recuperare un elenco di configurazioni di inventario per un bucket

L’esempio list-bucket-inventory-configurations seguente recupera la configurazione dell’inventario per il bucket specificato.

aws s3api list-bucket-inventory-configurations \ --bucket amzn-s3-demo-bucket

Output:

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

L’esempio di codice seguente mostra come utilizzare list-bucket-metrics-configurations.

AWS CLI

Come recuperare un elenco di configurazioni di metriche per un bucket

L’esempio list-bucket-metrics-configurations seguente recupera un elenco di configurazioni di metriche per il bucket specificato.

aws s3api list-bucket-metrics-configurations \ --bucket amzn-s3-demo-bucket

Output:

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

L’esempio di codice seguente mostra come utilizzare list-buckets.

AWS CLI

Il seguente comando utilizza il comando list-buckets per visualizzare i nomi di tutti i bucket Amazon S3 (in tutte le Regioni).

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

L’opzione query filtra l’output di list-buckets restituendo solo nomi dei bucket.

Per ulteriori informazioni sui bucket, consulta “Utilizzo dei bucket Amazon S3” nella Guida per gli sviluppatori di Amazon S3.

  • Per informazioni dettagliate sull’API, consulta ListBuckets in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare list-multipart-uploads.

AWS CLI

Il seguente comando elenca tutti i caricamenti in più parti attivi per un bucket denominato amzn-s3-demo-bucket.

aws s3api list-multipart-uploads --bucket amzn-s3-demo-bucket

Output:

{ "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": [] }

I caricamenti in più parti in corso generano costi di archiviazione in Amazon S3. Completa o annulla un caricamento in più parti attivo per rimuoverne le parti dall’account corrente.

  • Per informazioni dettagliate sull’API, consulta ListMultipartUploads in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare list-object-versions.

AWS CLI

Il seguente comando recupera le informazioni sulla versione di un oggetto in un bucket denominato amzn-s3-demo-bucket:

aws s3api list-object-versions --bucket amzn-s3-demo-bucket --prefix index.html

Output:

{ "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 } ] }
  • Per informazioni dettagliate sull’API, consulta ListObjectVersions in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare list-objects-v2.

AWS CLI

Come ottenere un elenco di oggetti in un bucket

Nell’esempio seguente list-objects-v2 elenca gli oggetti nel bucket specificato.

aws s3api list-objects-v2 \ --bucket amzn-s3-demo-bucket

Output:

{ "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 } ] }
  • Per informazioni dettagliate sull’API, consulta ListObjectsV2 in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare list-objects.

AWS CLI

L'esempio seguente utilizza il comando list-objects per visualizzare i nomi di tutti gli oggetti del bucket specificato:

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

L'esempio utilizza l'argomento --query per filtrare l'output di list-objects fino al valore della chiave e alla dimensione per ogni oggetto

Per ulteriori informazioni sugli oggetti, consulta Operazioni con gli oggetti di Amazon S3 nella Guida per gli sviluppatori di Amazon S3.

  • Per informazioni dettagliate sull’API, consulta ListObjects in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare list-parts.

AWS CLI

Il comando seguente elenca tutte le parti che sono state caricate per un caricamento in più parti con chiave multipart/01 nel bucket amzn-s3-demo-bucket:

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

Output:

{ "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" }
  • Per informazioni dettagliate sull’API, consulta ListParts in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare ls.

AWS CLI

Esempio 1: elenco di tutti i bucket di proprietà dell’utente

Il comando ls seguente elenca tutti i bucket di proprietà dell’utente. In questo esempio, l’utente possiede i bucket amzn-s3-demo-bucket e amzn-s3-demo-bucket2. Il timestamp è la data di creazione del bucket, mostrata nel fuso orario della macchina. Questa data può cambiare quando si apportano modifiche al bucket, ad esempio quando si modifica la policy di bucket. Tieni presente che se s3:// viene utilizzato per l’argomento path <S3Uri>, elencherà anche tutti i bucket.

aws s3 ls

Output:

2013-07-11 17:08:50 amzn-s3-demo-bucket 2013-07-24 14:55:44 amzn-s3-demo-bucket2

Esempio 2: elenco di tutti i prefissi e gli oggetti in un bucket

Il comando ls seguente elenca gli oggetti e i prefissi comuni in un bucket e un prefisso specificati. In questo esempio, l’utente possiede il bucket amzn-s3-demo-bucket con gli oggetti test.txt e somePrefix/test.txt. LastWriteTime e Length sono arbitrari. Tieni presente che, poiché il comando ls non ha alcuna interazione con il filesystem locale, lo schema URI s3:// non è necessario per risolvere l’ambiguità e può essere omesso.

aws s3 ls s3://amzn-s3-demo-bucket

Output:

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

Esempio 3: elenco di tutti i prefissi e gli oggetti in un bucket e un prefisso specifici

Il comando ls seguente elenca gli oggetti e i prefissi comuni in un bucket e un prefisso specificati. Tuttavia, non vi sono oggetti né prefissi comuni nel bucket e nel prefisso specificati.

aws s3 ls s3://amzn-s3-demo-bucket/noExistPrefix

Output:

None

Esempio 4: elenco ricorsivo di tutti i prefissi e gli oggetti in un bucket

Il comando ls seguente elencherà in modo ricorsivo gli oggetti in un bucket. Invece di visualizzare PRE dirname/ nell’output, tutto il contenuto di un bucket verrà elencato in ordine.

aws s3 ls s3://amzn-s3-demo-bucket \ --recursive

Output:

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

Esempio 5: riepilogo di tutti i prefissi e gli oggetti in un bucket

Il comando ls seguente illustra lo stesso comando utilizzando le opzioni --human-readable e --summarize. --human-readable visualizza la dimensione del file in byte/MiB/KiB/GiB/TiB/PiB/EiB. --summarize mostra il numero totale di oggetti e la dimensione totale alla fine dell’elenco dei risultati:

aws s3 ls s3://amzn-s3-demo-bucket \ --recursive \ --human-readable \ --summarize

Output:

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

Esempio 6: elenco da un punto di accesso S3

Il seguente comando ls elenca gli oggetti dal punto di accesso (myaccesspoint):

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

Output:

PRE somePrefix/ 2013-07-25 17:06:27 88 test.txt
  • Per informazioni dettagliate sull’API, consulta Ls in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare mb.

AWS CLI

Esempio 1: creare un bucket

Il seguente comando mb crea un gruppo di bucket. In questo esempio, l’utente crea il bucket amzn-s3-demo-bucket. Il bucket viene creato nella Regione specificata nel file di configurazione dell’utente:

aws s3 mb s3://amzn-s3-demo-bucket

Output:

make_bucket: s3://amzn-s3-demo-bucket

Esempio 2: crea un bucket nella Regione specificata

Il comando mb seguente crea un bucket in una Regione specificata dal parametro --region. In questo esempio, l’utente crea il bucket amzn-s3-demo-bucket nella Regione us-west-1:

aws s3 mb s3://amzn-s3-demo-bucket \ --region us-west-1

Output:

make_bucket: s3://amzn-s3-demo-bucket
  • Per informazioni dettagliate sull’API, consulta Mb in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare mv.

AWS CLI

Esempio 1: sposta un file locale nel bucket specificato

Il comando mv seguente sposta un singolo file in un bucket e una chiave specificati.

aws s3 mv test.txt s3://amzn-s3-demo-bucket/test2.txt

Output:

move: test.txt to s3://amzn-s3-demo-bucket/test2.txt

Esempio 2: sposta un oggetto nel bucket e nella chiave specificati

Il comando mv seguente sposta un singolo oggetto s3 in un bucket e una chiave specificati.

aws s3 mv s3://amzn-s3-demo-bucket/test.txt s3://amzn-s3-demo-bucket/test2.txt

Output:

move: s3://amzn-s3-demo-bucket/test.txt to s3://amzn-s3-demo-bucket/test2.txt

Esempio 3: sposta un oggetto S3 nella directory locale

Il comando mv seguente sposta in locale un singolo oggetto in un file specificato.

aws s3 mv s3://amzn-s3-demo-bucket/test.txt test2.txt

Output:

move: s3://amzn-s3-demo-bucket/test.txt to test2.txt

Esempio 4: sposta un oggetto con il suo nome originale nel bucket specificato

Il comando mv seguente sposta un singolo oggetto in un bucket specificato mantenendo il nome originale:

aws s3 mv s3://amzn-s3-demo-bucket/test.txt s3://amzn-s3-demo-bucket2/

Output:

move: s3://amzn-s3-demo-bucket/test.txt to s3://amzn-s3-demo-bucket2/test.txt

Esempio 5: sposta tutti gli oggetti e i prefissi di un bucket nella directory locale

Se passato con il parametro--recursive, il comando mv seguente sposta in modo ricorsivo tutti gli oggetti con un prefisso e un bucket specificati in una directory specificata. In questo esempio, il bucket amzn-s3-demo-bucket contiene gli oggetti test1.txt e test2.txt.

aws s3 mv s3://amzn-s3-demo-bucket . \ --recursive

Output:

move: s3://amzn-s3-demo-bucket/test1.txt to test1.txt move: s3://amzn-s3-demo-bucket/test2.txt to test2.txt

Esempio 6: sposta tutti gli oggetti e i prefissi di un bucket nella directory locale, ad eccezione dei file “.jpg”

Se passato con il parametro--recursive, il comando mv seguente sposta in modo ricorsivo tutti i file in una directory specificata in un bucket e un prefisso specificati, eccetto alcuni file esclusi utilizzando un parametro --exclude. In questo esempio, la directory myDir contiene i file test1.txt e test2.jpg.

aws s3 mv myDir s3://amzn-s3-demo-bucket/ \ --recursive \ --exclude "*.jpg"

Output:

move: myDir/test1.txt to s3://amzn-s3-demo-bucket2/test1.txt

Esempio 7: sposta tutti gli oggetti e i prefissi in un bucket nella directory locale, eccetto il prefisso specificato

Se passato con il parametro--recursive, il comando mv seguente sposta in modo ricorsivo tutti gli oggetti contenuti in un bucket specificato in un altro bucket, eccetto alcuni oggetti esclusi utilizzando un parametro --exclude. In questo esempio, il bucket amzn-s3-demo-bucket contiene gli oggetti test1.txt e another/test1.txt.

aws s3 mv s3://amzn-s3-demo-bucket/ s3://amzn-s3-demo-bucket2/ \ --recursive \ --exclude "amzn-s3-demo-bucket/another/*"

Output:

move: s3://amzn-s3-demo-bucket/test1.txt to s3://amzn-s3-demo-bucket2/test1.txt

Esempio 8: sposta un oggetto nel bucket specificato e imposta l’ACL

Il comando mv seguente sposta un singolo oggetto in un bucket e una chiave specificati mentre si imposta l’ACL su public-read-write.

aws s3 mv s3://amzn-s3-demo-bucket/test.txt s3://amzn-s3-demo-bucket/test2.txt \ --acl public-read-write

Output:

move: s3://amzn-s3-demo-bucket/test.txt to s3://amzn-s3-demo-bucket/test2.txt

Esempio 9: sposta un file locale nel bucket specificato e concedi le autorizzazioni

Il comando mv seguente illustra l’utilizzo dell’opzione --grants per concedere l’accesso in lettura a tutti gli utenti e il controllo completo a un utente specifico identificato dal relativo indirizzo e-mail.

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

Output:

move: file.txt to s3://amzn-s3-demo-bucket/file.txt

Esempio 10: sposta un file su un punto di accesso S3

Il comando mv seguente sposta un singolo file denominato mydoc.txt nel punto di accesso denominato myaccesspoint con la chiave denominata mykey.

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

Output:

move: mydoc.txt to s3://arn:aws:s3:us-west-2:123456789012:accesspoint/myaccesspoint/mykey
  • Per informazioni dettagliate sull’API, consulta Mv in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare presign.

AWS CLI

Esempio 1: per creare un URL prefirmato con la durata predefinita di un’ora che rimanda a un oggetto in un bucket S3

Il comando presign seguente genera un URL prefirmato, valido per un’ora, per un bucket e una chiave specificati.

aws s3 presign s3://amzn-s3-demo-bucket/test2.txt

Output:

https://amzn-s3-demo-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

Esempio 2: per creare un URL prefirmato con una durata personalizzata che rimanda a un oggetto in un bucket S3

Il comando presign seguente genera un URL prefirmato per un bucket e una chiave specificati validi per una settimana.

aws s3 presign s3://amzn-s3-demo-bucket/test2.txt \ --expires-in 604800

Output:

https://amzn-s3-demo-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

Per ulteriori informazioni, consulta Condivisione di un oggetto con altri nella Guida per sviluppatori di S3.

  • Per informazioni dettagliate sull’API, consulta Presign in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare put-bucket-accelerate-configuration.

AWS CLI

Come impostare la configurazione di accelerazione di un bucket

L’esempio put-bucket-accelerate-configuration seguente abilita la configurazione di accelerazione per il bucket specificato.

aws s3api put-bucket-accelerate-configuration \ --bucket amzn-s3-demo-bucket \ --accelerate-configuration Status=Enabled

Questo comando non produce alcun output.

L’esempio di codice seguente mostra come utilizzare put-bucket-acl.

AWS CLI

Questo esempio concede l’autorizzazione full control a due utenti AWS (user1@example.com e user2@example.com) e l’autorizzazione read a tutti:

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

Consulta la pagina all’indirizzo http://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTacl.html per informazioni dettagliate sulle liste di controllo degli accessi (ACL) personalizzate (i comandi ACL s3api, ad esempio put-bucket-acl, utilizzano la stessa notazione abbreviata degli argomenti).

  • Per informazioni dettagliate sull’API, consulta PutBucketAcl in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare put-bucket-analytics-configuration.

AWS CLI

Come impostare una configurazione di analisi per il bucket

L’esempio put-bucket-analytics-configuration seguente configura l’analisi per il bucket specificato.

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

Questo comando non produce alcun output.

L’esempio di codice seguente mostra come utilizzare put-bucket-cors.

AWS CLI

L’esempio seguente abilita le richieste PUT, POST e DELETE da www.example.com e abilita le richieste GET da qualsiasi dominio:

aws s3api put-bucket-cors --bucket amzn-s3-demo-bucket --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 } ] }
  • Per informazioni dettagliate sull’API, consulta PutBucketCors in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare put-bucket-encryption.

AWS CLI

Come configurare la crittografia lato server per un bucket

L’esempio put-bucket-encryption seguente imposta la crittografia AES256 come predefinita per il bucket specificato.

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

Questo comando non produce alcun output.

  • Per informazioni dettagliate sull’API, consulta PutBucketEncryption in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare put-bucket-intelligent-tiering-configuration.

AWS CLI

Come aggiornare una configurazione S3 Intelligent-Tiering su un bucket

L’esempio put-bucket-intelligent-tiering-configuration seguente aggiorna una configurazione S3 Intelligent-Tiering, denominata ExampleConfig, su un bucket. La configurazione passerà gli oggetti a cui non è stato effettuato l’accesso nelle immagini del prefisso al livello Accesso di archiviazione dopo 90 giorni e al livello Accesso di archiviazione profonda dopo 180 giorni.

aws s3api put-bucket-intelligent-tiering-configuration \ --bucket amzn-s3-demo-bucket \ --id "ExampleConfig" \ --intelligent-tiering-configuration file://intelligent-tiering-configuration.json

Contenuto di intelligent-tiering-configuration.json.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Impostazione di Object Ownership su un bucket esistente nella Guida per l’utente di Amazon S3.

L’esempio di codice seguente mostra come utilizzare put-bucket-inventory-configuration.

AWS CLI

Esempio 1: per impostare una configurazione di inventario per un bucket

L’esempio put-bucket-inventory-configuration seguente imposta un report d’inventario settimanale in formato ORC per il bucket amzn-s3-demo-bucket.

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

Questo comando non produce alcun output.

Esempio 2: per impostare una configurazione di inventario per un bucket

L’esempio put-bucket-inventory-configuration seguente imposta un report d’inventario giornaliero in formato CSV per il bucket amzn-s3-demo-bucket.

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

Questo comando non produce alcun output.

L’esempio di codice seguente mostra come utilizzare put-bucket-lifecycle-configuration.

AWS CLI

Il comando seguente applica una configurazione del ciclo di vita a un bucket denominato amzn-s3-demo-bucket:

aws s3api put-bucket-lifecycle-configuration --bucket amzn-s3-demo-bucket --lifecycle-configuration file://lifecycle.json

Il file lifecycle.json è un documento JSON nella cartella corrente che specifica due regole:

{ "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" } ] }

La prima regola sposta i file con il prefisso rotated su Glacier nella data specificata. La seconda regola sposta le vecchie versioni degli oggetti su Glacier quando non sono più attuali. Per informazioni sui formati di timestamp accettabili, consulta “Specifica dei valori di parametro” nella Guida per l’utente dell’Interfaccia della linea di comando AWS (AWS CLI).

L’esempio di codice seguente mostra come utilizzare put-bucket-lifecycle.

AWS CLI

Il comando seguente applica una configurazione del ciclo di vita al bucket amzn-s3-demo-bucket:

aws s3api put-bucket-lifecycle --bucket amzn-s3-demo-bucket --lifecycle-configuration file://lifecycle.json

Il file lifecycle.json è un documento JSON nella cartella corrente che specifica due regole:

{ "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" } ] }

La prima regola sposta i file in Amazon Glacier dopo sessanta giorni. La seconda regola elimina i file da Amazon S3 alla data specificata. Per informazioni sui formati di timestamp accettabili, consulta “Specifica dei valori di parametro” nella Guida per l’utente dell’Interfaccia della linea di comando AWS (AWS CLI).

Ogni regola nell’esempio precedente specifica una policy (Transition o Expiration) e un prefisso del file (nome della cartella) a cui si applica. Puoi anche creare una regola che si applica a un intero bucket specificando un prefisso vuoto:

{ "Rules": [ { "ID": "Move to Glacier after sixty days (all objects in bucket)", "Prefix": "", "Status": "Enabled", "Transition": { "Days": 60, "StorageClass": "GLACIER" } } ] }
  • Per informazioni dettagliate sull’API, consulta PutBucketLifecycle in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare put-bucket-logging.

AWS CLI

Esempio 1: per impostare la registrazione di log delle policy di bucket

Nell’esempio seguente put-bucket-logging imposta la policy di registrazione di log per amzn-s3-demo-bucket. Innanzitutto, concedi al servizio di registrazione di log l’autorizzazione principale nella policy di bucket con il comando put-bucket-policy.

aws s3api put-bucket-policy \ --bucket amzn-s3-demo-bucket \ --policy file://policy.json

Contenuto di policy.json.

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

Per applicare la policy di registrazione di log, utilizza put-bucket-logging.

aws s3api put-bucket-logging \ --bucket amzn-s3-demo-bucket \ --bucket-logging-status file://logging.json

Contenuto di logging.json.

{ "LoggingEnabled": { "TargetBucket": "amzn-s3-demo-bucket", "TargetPrefix": "Logs/" } }

Il comando put-bucket-policy è necessario per concedere le autorizzazioni s3:PutObject al principale del servizio di registrazione di log.

Per ulteriori informazioni, consulta Registrazione degli accessi al server Amazon S3 nella Guida per l’utente di Amazon S3.

Esempio 2: per impostare una policy di bucket per la registrazione dell’accesso su un unico utente

Nell’esempio seguente put-bucket-logging imposta la policy di registrazione di log per amzn-s3-demo-bucket. L’utente AWS bob@example.com avrà il pieno controllo sui file di log e nessun altro utente potrà accedervi. Concedi innanzitutto l’autorizzazione S3 con put-bucket-acl.

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

Applica quindi la policy di registrazione di log con put-bucket-logging.

aws s3api put-bucket-logging \ --bucket amzn-s3-demo-bucket \ --bucket-logging-status file://logging.json

Contenuto di logging.json.

{ "LoggingEnabled": { "TargetBucket": "amzn-s3-demo-bucket", "TargetPrefix": "amzn-s3-demo-bucket-logs/", "TargetGrants": [ { "Grantee": { "Type": "AmazonCustomerByEmail", "EmailAddress": "bob@example.com" }, "Permission": "FULL_CONTROL" } ] } }

Il comando put-bucket-acl è necessario per concedere al sistema di distribuzione dei log S3 le autorizzazioni necessarie (autorizzazioni di scrittura e read-acp).

Per ulteriori informazioni, consulta Registrazione degli accessi al server Amazon S3 nella Guida per gli sviluppatori di Amazon S3.

  • Per informazioni dettagliate sull’API, consulta PutBucketLogging in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare put-bucket-metrics-configuration.

AWS CLI

Come impostare una configurazione delle metriche per un bucket

L’esempio put-bucket-metrics-configuration seguente imposta una configurazione della metrica con ID 123 per il bucket specificato.

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

Questo comando non produce alcun output.

L’esempio di codice seguente mostra come utilizzare put-bucket-notification-configuration.

AWS CLI

Come abilitare le notifiche specificate in un bucket

Nell’esempio seguente put-bucket-notification-configuration applica una configurazione di notifica a un bucket denominato amzn-s3-demo-bucket. Il file notification.json è un documento JSON nella cartella corrente che specifica un argomento SNS e un tipo di evento da monitorare.

aws s3api put-bucket-notification-configuration \ --bucket amzn-s3-demo-bucket \ --notification-configuration file://notification.json

Contenuto di notification.json.

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

All’argomento SNS deve essere collegata una policy IAM che consenta ad Amazon S3 di effettuarvi pubblicazioni.

{ "Version":"2012-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:*:*:amzn-s3-demo-bucket" } } } ] }

L’esempio di codice seguente mostra come utilizzare put-bucket-notification.

AWS CLI

Applica una configurazione di notifica a un bucket denominato amzn-s3-demo-bucket:

aws s3api put-bucket-notification --bucket amzn-s3-demo-bucket --notification-configuration file://notification.json

Il file notification.json è un documento JSON nella cartella corrente che specifica un argomento SNS e un tipo di evento da monitorare.

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

All’argomento SNS deve essere collegata una policy IAM che consenta ad Amazon S3 di effettuarvi pubblicazioni.

{ "Version":"2012-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:amzn-s3-demo-bucket", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:s3:*:*:amzn-s3-demo-bucket" } } } ] }

L’esempio di codice seguente mostra come utilizzare put-bucket-ownership-controls.

AWS CLI

Come aggiornare le impostazioni di proprietà del bucket di un bucket

L’esempio put-bucket-ownership-controls seguente aggiorna le impostazioni di proprietà del bucket di un bucket.

aws s3api put-bucket-ownership-controls \ --bucket amzn-s3-demo-bucket \ --ownership-controls="Rules=[{ObjectOwnership=BucketOwnerEnforced}]"

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Impostazione di Object Ownership su un bucket esistente nella Guida per l’utente di Amazon S3.

L’esempio di codice seguente mostra come utilizzare put-bucket-policy.

AWS CLI

Questo esempio consente a tutti gli utenti di recuperare qualsiasi oggetto in amzn-s3-demo-bucket tranne quelli in MySecretFolder. Concede inoltre l’autorizzazione put e delete all’utente root dell’account AWS 1234-5678-9012.

aws s3api put-bucket-policy --bucket amzn-s3-demo-bucket --policy file://policy.json policy.json: { "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*" }, { "Effect": "Deny", "Principal": "*", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/MySecretFolder/*" }, { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:root" }, "Action": [ "s3:DeleteObject", "s3:PutObject" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*" } ] }
  • Per informazioni dettagliate sull’API, consulta PutBucketPolicy in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare put-bucket-replication.

AWS CLI

Come configurare la replica per un bucket S3

L’esempio put-bucket-replication seguente applica una configurazione di replica al bucket S3 specificato.

aws s3api put-bucket-replication \ --bucket amzn-s3-demo-bucket1 \ --replication-configuration file://replication.json

Contenuto di 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:::amzn-s3-demo-bucket2" } } ] }

Il bucket di destinazione deve avere il controllo delle versioni abilitato. Il ruolo specificato deve disporre dell’autorizzazione di scrittura nel bucket di destinazione e di una relazione di attendibilità che consenta ad Amazon S3 di assumere il ruolo.

Esempio di policy di autorizzazione di un ruolo:

{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetReplicationConfiguration", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket1" ] }, { "Effect": "Allow", "Action": [ "s3:GetObjectVersion", "s3:GetObjectVersionAcl", "s3:GetObjectVersionTagging" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket1/*" ] }, { "Effect": "Allow", "Action": [ "s3:ReplicateObject", "s3:ReplicateDelete", "s3:ReplicateTags" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket2/*" } ] }

Esempio di policy delle relazioni di attendibilità:

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta il seguente argomento nella Guida per l’utente della console Amazon Simple Storage Service.

  • Per informazioni dettagliate sull’API, consulta PutBucketReplication in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare put-bucket-request-payment.

AWS CLI

Esempio 1: per abilitare la configurazione “requester pays” per un bucket

Nell’esempio seguente put-bucket-request-payment abilita requester pays per il bucket specificato.

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

Questo comando non produce alcun output.

Esempio 2: per disabilitare la configurazione “requester pays” per un bucket

L’esempio put-bucket-request-payment seguente disabilita requester pays per il bucket specificato.

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

Questo comando non produce alcun output.

L’esempio di codice seguente mostra come utilizzare put-bucket-tagging.

AWS CLI

Il seguente comando applica una configurazione di tagging da un bucket denominato amzn-s3-demo-bucket.

aws s3api put-bucket-tagging --bucket amzn-s3-demo-bucket --tagging file://tagging.json

Il file tagging.json è un documento JSON nella cartella corrente in cui sono specificati i tag.

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

In alternativa, applica una configurazione di tagging ad amzn-s3-demo-bucket direttamente dalla riga di comando.

aws s3api put-bucket-tagging --bucket amzn-s3-demo-bucket --tagging 'TagSet=[{Key=organization,Value=marketing}]'
  • Per informazioni dettagliate sull’API, consulta PutBucketTagging in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare put-bucket-versioning.

AWS CLI

Il seguente comando abilita il controllo delle versioni sul bucket denominato amzn-s3-demo-bucket.

aws s3api put-bucket-versioning --bucket amzn-s3-demo-bucket --versioning-configuration Status=Enabled

Il seguente comando abilita il controllo delle versioni e utilizza una modalità di autenticazione a più fattori (MFA).

aws s3api put-bucket-versioning --bucket amzn-s3-demo-bucket --versioning-configuration Status=Enabled --mfa "SERIAL 123456"
  • Per informazioni dettagliate sull’API, consulta PutBucketVersioning in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare put-bucket-website.

AWS CLI

Applica una configurazione statica del sito web a un bucket denominato amzn-s3-demo-bucket.

aws s3api put-bucket-website --bucket amzn-s3-demo-bucket --website-configuration file://website.json

Il file website.json è un documento JSON nella cartella corrente che specifica le pagine dell’indice e degli errori per il sito web:

{ "IndexDocument": { "Suffix": "index.html" }, "ErrorDocument": { "Key": "error.html" } }
  • Per informazioni dettagliate sull’API, consulta PutBucketWebsite in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare put-object-acl.

AWS CLI

Il seguente comando concede l’autorizzazione full control a due utenti AWS (user1@example.com e user2@example.com) e l’autorizzazione read a tutti.

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

Consulta la pagina all’indirizzo http://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTacl.html per informazioni dettagliate sulle liste di controllo degli accessi (ACL) personalizzate (i comandi ACL s3api, ad esempio put-object-acl, utilizzano la stessa notazione abbreviata degli argomenti).

  • Per informazioni dettagliate sull’API, consulta PutObjectAcl in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare put-object-legal-hold.

AWS CLI

Come applicare lo stato relativo alla conservazione a fini legali a un oggetto

Nell’esempio seguente put-object-legal-hold imposta un blocco a fini legali sull’oggetto doc1.rtf.

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

Questo comando non produce alcun output.

  • Per informazioni dettagliate sull’API, consulta PutObjectLegalHold in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare put-object-lock-configuration.

AWS CLI

Come impostare la configurazione Object Lock di un bucket

L’esempio put-object-lock-configuration seguente imposta un Object Lock di 50 giorni sul bucket specificato.

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

Questo comando non produce alcun output.

L’esempio di codice seguente mostra come utilizzare put-object-retention.

AWS CLI

Come impostare una configurazione di conservazione degli oggetti per un oggetto

L’esempio put-object-retention seguente imposta una configurazione di conservazione degli oggetti per l’oggetto specificato fino al 01/01/2025.

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

Questo comando non produce alcun output.

  • Per informazioni dettagliate sull’API, consulta PutObjectRetention in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare put-object-tagging.

AWS CLI

Come impostare un tag su un oggetto

L’esempio put-object-tagging seguente assegna un tag con la chiave designation e il valore confidential sull’oggetto specificato.

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

Questo comando non produce alcun output.

L’esempio put-object-tagging seguente imposta diversi set di tag sull’oggetto specificato.

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

Questo comando non produce alcun output.

  • Per informazioni dettagliate sull’API, consulta PutObjectTagging in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare put-object.

AWS CLI

Esempio 1: carica un oggetto in Amazon S3

Il seguente comando put-object di esempio carica un oggetto in Amazon S3.

aws s3api put-object \ --bucket amzn-s3-demo-bucket \ --key my-dir/MySampleImage.png \ --body MySampleImage.png

Per ulteriori informazioni sul caricamento di oggetti, consulta “Caricamento degli oggetti” < http://docs.aws.amazon.com/AmazonS3/latest/dev/UploadingObjects.html> nella Guida per gli sviluppatori di Amazon S3.

Esempio 2: carica un file video in Amazon S3

Il seguente comando put-object di esempio carica un file video.

aws s3api put-object \ --bucket amzn-s3-demo-bucket \ --key my-dir/big-video-file.mp4 \ --body /media/videos/f-sharp-3-data-services.mp4

Per ulteriori informazioni sul caricamento di oggetti, consulta “Caricamento degli oggetti” < http://docs.aws.amazon.com/AmazonS3/latest/dev/UploadingObjects.html> nella Guida per gli sviluppatori di Amazon S3.

  • Per informazioni dettagliate sull’API, consulta PutObject in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare put-public-access-block.

AWS CLI

Come impostare la configurazione di blocco dell’accesso pubblico per un bucket

L’esempio put-public-access-block seguente imposta una configurazione di blocco dell’accesso pubblico restrittiva per il bucket specificato.

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

Questo comando non produce alcun output.

  • Per informazioni dettagliate sull’API, consulta PutPublicAccessBlock in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare rb.

AWS CLI

Esempio 1: eliminare un bucket

Il seguente comando rb rimuove un bucket. In questo esempio, il bucket dell’utente è amzn-s3-demo-bucket. Tieni presente che il bucket deve essere vuoto per essere rimosso:

aws s3 rb s3://amzn-s3-demo-bucket

Output:

remove_bucket: amzn-s3-demo-bucket

Esempio 2: eliminazione forzata di un bucket

Il comando rb seguente utilizza il parametro --force per rimuovere prima tutti gli oggetti nel bucket, poi il bucket stesso. In questo esempio, il bucket dell’utente è amzn-s3-demo-bucket e gli oggetti in amzn-s3-demo-bucket sono test1.txt e test2.txt:

aws s3 rb s3://amzn-s3-demo-bucket \ --force

Output:

delete: s3://amzn-s3-demo-bucket/test1.txt delete: s3://amzn-s3-demo-bucket/test2.txt remove_bucket: amzn-s3-demo-bucket
  • Per informazioni dettagliate sull’API, consulta Rb in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare restore-object.

AWS CLI

Come creare una richiesta di ripristino per un oggetto

L’esempio restore-object seguente ripristina l’oggetto Amazon S3 Glacier specificato per il bucket my-glacier-bucket per 10 giorni.

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

Questo comando non produce alcun output.

  • Per informazioni dettagliate sull’API, consulta RestoreObject in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare rm.

AWS CLI

Esempio 1: elimina un oggetto S3

Il comando rm seguente elimina un singolo oggetto s3.

aws s3 rm s3://amzn-s3-demo-bucket/test2.txt

Output:

delete: s3://amzn-s3-demo-bucket/test2.txt

Esempio 2: elimina tutti i contenuti in un bucket

Il comando rm seguente elimina in modo ricorsivo tutti gli oggetti contenuti in un bucket e in un prefisso specificati se passato con il parametro --recursive. In questo esempio, il bucket amzn-s3-demo-bucket contiene gli oggetti test1.txt e test2.txt:

aws s3 rm s3://amzn-s3-demo-bucket \ --recursive

Output:

delete: s3://amzn-s3-demo-bucket/test1.txt delete: s3://amzn-s3-demo-bucket/test2.txt

Esempio 3: elimina tutti i contenuti in un bucket, ad eccezione dei file “.jpg”

Il comando rm seguente elimina in modo ricorsivo tutti gli oggetti contenuti in un bucket e un prefisso specificati se passato con il parametro --recursive, eccetto alcuni oggetti esclusi utilizzando un parametro --exclude. In questo esempio, il bucket amzn-s3-demo-bucket contiene gli oggetti test1.txt e test2.jpg:

aws s3 rm s3://amzn-s3-demo-bucket/ \ --recursive \ --exclude "*.jpg"

Output:

delete: s3://amzn-s3-demo-bucket/test1.txt

Esempio 4: elimina tutti i contenuti in un bucket, ad eccezione degli oggetti con il prefisso specificato

Il comando rm seguente elimina in modo ricorsivo tutti gli oggetti contenuti in un bucket e un prefisso specificati se passato con il parametro --recursive, eccetto alcuni oggetti con un prefisso particolare esclusi utilizzando un parametro --exclude. In questo esempio, il bucket amzn-s3-demo-bucket contiene gli oggetti test1.txt e another/test.txt:

aws s3 rm s3://amzn-s3-demo-bucket/ \ --recursive \ --exclude "another/*"

Output:

delete: s3://amzn-s3-demo-bucket/test1.txt

Esempio 5: elimina un oggetto da un punto di accesso S3

Il comando rm seguente elimina un singolo oggetto (mykey) dal punto di accesso (myaccesspoint). Il comando rm seguente elimina un singolo oggetto (mykey) dal punto di accesso (myaccesspoint).

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

Output:

delete: s3://arn:aws:s3:us-west-2:123456789012:accesspoint/myaccesspoint/mykey
  • Per informazioni dettagliate sull’API, consulta Rm in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare select-object-content.

AWS CLI

Per filtrare il contenuto di un oggetto Amazon S3 in base a un’istruzione SQL

L’esempio select-object-content seguente filtra l’oggetto my-data-file.csv con l’istruzione SQL specificata e invia l’output a un file.

aws s3api select-object-content \ --bucket amzn-s3-demo-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"

Questo comando non produce alcun output.

  • Per informazioni dettagliate sull’API, consulta SelectObjectContent in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare sync.

AWS CLI

Esempio 1: sincronizza tutti gli oggetti locali con il bucket specificato

Il comando sync seguente sincronizza gli oggetti da una directory locale al prefisso e al bucket specificati caricando i file locali su S3. Un file locale dovrà essere caricato se la sua dimensione è diversa da quella dell’oggetto S3, l’ora dell’ultima modifica del file locale è successiva all’ora dell’ultima modifica dell’oggetto S3 o il file locale non esiste nel bucket e nel prefisso specificati. In questo esempio, l’utente sincronizza il bucket amzn-s3-demo-bucket con la directory corrente locale. La directory corrente locale contiene i file test.txt e test2.txt. Il bucket amzn-s3-demo-bucket non contiene alcun oggetto.

aws s3 sync . s3://amzn-s3-demo-bucket

Output:

upload: test.txt to s3://amzn-s3-demo-bucket/test.txt upload: test2.txt to s3://amzn-s3-demo-bucket/test2.txt

Esempio 2: sincronizza tutti gli oggetti S3 dal bucket S3 specificato con un altro bucket

Il comando sync seguente sincronizza gli oggetti con un prefisso e un bucket specificati con gli oggetti con un altro prefisso e un altro bucket specificati copiando gli oggetti S3. Un oggetto S3 richiederà la copia se le dimensioni dei due oggetti S3 sono diverse, l’ora dell’ultima modifica dell’origine è successiva all’ora dell’ultima modifica della destinazione o l’oggetto S3 non esiste nella destinazione del bucket e del prefisso specificati.

In questo esempio, l’utente sincronizza il bucket amzn-s3-demo-bucket con il bucket amzn-s3-demo-bucket2. Il bucket amzn-s3-demo-bucket contiene gli oggetti test.txt e test2.txt. Il bucket amzn-s3-demo-bucket2 non contiene alcun oggetto:

aws s3 sync s3://amzn-s3-demo-bucket s3://amzn-s3-demo-bucket2

Output:

copy: s3://amzn-s3-demo-bucket/test.txt to s3://amzn-s3-demo-bucket2/test.txt copy: s3://amzn-s3-demo-bucket/test2.txt to s3://amzn-s3-demo-bucket2/test2.txt

Esempio 3: sincronizza tutti gli oggetti S3 dal bucket S3 specificato alla directory locale

Il comando sync seguente sincronizza i file dal bucket S3 specificato alla directory locale scaricando oggetti S3. Un oggetto S3 dovrà essere scaricato se la sua dimensione è diversa da quella del file locale, l’ora dell’ultima modifica dell’oggetto S3 è più recente dell’ora dell’ultima modifica del file locale o l’oggetto S3 non esiste nella directory locale. Tieni presente che quando gli oggetti vengono scaricati da S3, l’ora dell’ultima modifica del file locale viene sostituita dall’ora dell’ultima modifica dell’oggetto S3. In questo esempio, l’utente sincronizza il bucket amzn-s3-demo-bucket con la directory locale corrente. Il bucket amzn-s3-demo-bucket contiene gli oggetti test.txt e test2.txt. La directory locale corrente non contiene file:

aws s3 sync s3://amzn-s3-demo-bucket .

Output:

download: s3://amzn-s3-demo-bucket/test.txt to test.txt download: s3://amzn-s3-demo-bucket/test2.txt to test2.txt

Esempio 4: sincronizza tutti gli oggetti locali nel bucket specificato ed elimina tutti i file che non corrispondono

Il comando sync seguente sincronizza gli oggetti con un prefisso e un bucket specificati con i file in una directory locale caricando i file locali su S3. A causa del parametro --delete, tutti i file esistenti con il prefisso e il bucket specificati, ma non esistenti nella directory locale, verranno eliminati. In questo esempio, l’utente sincronizza il bucket amzn-s3-demo-bucket con la directory corrente locale. La directory corrente locale contiene i file test.txt e test2.txt. Il bucket amzn-s3-demo-bucket contiene l’oggetto test3.txt:

aws s3 sync . s3://amzn-s3-demo-bucket \ --delete

Output:

upload: test.txt to s3://amzn-s3-demo-bucket/test.txt upload: test2.txt to s3://amzn-s3-demo-bucket/test2.txt delete: s3://amzn-s3-demo-bucket/test3.txt

Esempio 5: sincronizza tutti gli oggetti locali con il bucket specificato tranne i file “.jpg”

Il comando sync seguente sincronizza gli oggetti con un prefisso e un bucket specificati con i file in una directory locale caricando i file locali su S3. A causa del parametro --exclude, tutti i file che corrispondono al modello esistente, sia in S3 che localmente, verranno esclusi dalla sincronizzazione. In questo esempio, l’utente sincronizza il bucket amzn-s3-demo-bucket con la directory corrente locale. La directory corrente locale contiene i file test.jpg e test2.txt. Il bucket amzn-s3-demo-bucket contiene l’oggetto test.jpg di dimensioni diverse da quelle del test.jpg locale:

aws s3 sync . s3://amzn-s3-demo-bucket \ --exclude "*.jpg"

Output:

upload: test2.txt to s3://amzn-s3-demo-bucket/test2.txt

Esempio 6: sincronizza tutti gli oggetti locali con il bucket specificato ad eccezione dei file di directory specificati

Il comando sync seguente sincronizza i file in una directory locale con gli oggetti con un prefisso e un bucket specificati scaricando oggetti S3. Questo esempio utilizza il flag del parametro --exclude per escludere una directory e un prefisso S3 specificati dal comando sync. In questo esempio, l’utente sincronizza la directory corrente locale con il bucket amzn-s3-demo-bucket. La directory corrente locale contiene i file test.txt e another/test2.txt. Il bucket amzn-s3-demo-bucket contiene gli oggetti another/test5.txt e test1.txt:

aws s3 sync s3://amzn-s3-demo-bucket/ . \ --exclude "*another/*"

Output:

download: s3://amzn-s3-demo-bucket/test1.txt to test1.txt

Esempio 7: sincronizza tutti gli oggetti tra i bucket in diverse Regioni

Il comando sync seguente sincronizza i file tra due bucket in Regioni diverse:

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

Output:

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

Esempio 8: sincronizza con un punto di accesso S3

Il comando sync seguente sincronizza la directory corrente con il punto di accesso (myaccesspoint):

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

Output:

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
  • Per informazioni dettagliate sull’API, consulta Sync in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare upload-part-copy.

AWS CLI

Come caricare parte di un oggetto copiando i dati da un oggetto esistente come origine dati

L’esempio upload-part-copy seguente carica una parte copiando i dati da un oggetto esistente come origine dati.

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

Output:

{ "CopyPartResult": { "LastModified": "2019-12-13T23:16:03.000Z", "ETag": "\"711470fc377698c393d94aed6305e245\"" } }
  • Per informazioni dettagliate sull’API, consulta UploadPartCopy in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare upload-part.

AWS CLI

Il comando seguente carica la prima parte di un caricamento in più parti avviato con il comando create-multipart-upload:

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

L’opzione body richiede il nome o il percorso di un file locale per il caricamento (non utilizzare il prefisso file://). La dimensione minima della parte è 5 MB. L’ID di caricamento viene restituito da create-multipart-upload e può essere recuperato anche con list-multipart-uploads. Il bucket e la chiave vengono specificati quando si crea il caricamento in più parti.

Output:

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

Salva il valore ETag di ogni parte per utilizzarlo in un secondo momento. Tale valore sarà necessario per completare un caricamento in più parti.

  • Per informazioni dettagliate sull’API, consulta UploadPart in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare website.

AWS CLI

Configura un bucket S3 come un sito web statico

Il comando seguente configura un bucket denominato amzn-s3-demo-bucket come sito web statico. L’opzione del documento di indice specifica il file nel bucket amzn-s3-demo-bucket a cui verranno indirizzati i visitatori quando accedono all’URL del sito web. In questo caso, il bucket si trova nella Regione us-west-2, quindi il sito verrà visualizzato all’indirizzo http://amzn-s3-demo-bucket.s3-website-us-west-2.amazonaws.com.

Tutti i file nel bucket che appaiono nel sito statico devono essere configurati per consentire ai visitatori di aprirli. Le autorizzazioni relative ai file sono configurate separatamente dalla configurazione del sito web del bucket.

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

Per informazioni su come ospitare un sito web statico su Amazon S3, consulta Hosting di un sito web statico nella Guida per gli sviluppatori di Amazon Simple Storage Service.

  • Per informazioni dettagliate sull’API, consulta Website in AWS CLI Command Reference.