

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Suppression d’objets à partir d’un compartiment de répertoires
<a name="directory-bucket-delete-object"></a>

Vous pouvez supprimer des objets d'un compartiment d'annuaire Amazon S3 à l'aide de la console Amazon S3, AWS Command Line Interface (AWS CLI) ou AWS SDKs. Pour plus d’informations, consultez [Utilisation des compartiments de répertoires](directory-buckets-overview.md) et [S3 Express One Zone](directory-bucket-high-performance.md#s3-express-one-zone).

**Avertissement**  
La suppression d’un objet est irréversible.
Cette action supprime tous les objets spécifiés. Lorsque vous supprimez des dossiers, attendez la fin de l’action de suppression pour ajouter de nouveaux objets au dossier. Dans le cas contraire, de nouveaux objets pourraient également être supprimés.

**Note**  
Lorsque vous supprimez plusieurs objets d’un compartiment de répertoires par programmation, notez les points suivants :  
Les clés d’objet figurant dans les demandes `DeleteObjects` doivent contenir au moins un caractère autre qu’une espace. Les chaînes composées uniquement d’espaces ne sont pas prises en charge.
Les clés d’objet figurant dans les demandes `DeleteObjects` ne peuvent pas contenir de caractères de contrôle Unicode, à l’exception des sauts de ligne (`\n`), des tabulations (`\t`) et des retour chariot (`\r`).

## Utilisation de la console S3
<a name="delete-object-directory-bucket-console"></a>

**Pour supprimer des objets**

1. Connectez-vous à la console Amazon S3 AWS Management Console et ouvrez-la à l'adresse [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. Dans le volet de navigation de gauche, choisissez **Compartiments de répertoires**.

1. Choisissez le compartiment de répertoires contenant les objets que vous souhaitez supprimer.

1. Cliquez sur l’onglet **Objets**. Dans la liste **Objets**, cochez la case en regard des objets que vous souhaitez supprimer.

1. Sélectionnez **Delete (Supprimer)**.

   

1. Sur la page **Supprimer des objets**, entrez **permanently delete** dans la zone de texte.

1. Choisissez **Supprimer les objets**.

## En utilisant le AWS SDKs
<a name="delete-object-directory-bucket-sdks"></a>

------
#### [ SDK for Java 2.x ]

**Example**  
L’exemple suivant illustre la suppression d’objets dans un compartiment de répertoires à l’aide du kit AWS SDK for Java 2.x.   

```
static void deleteObject(S3Client s3Client, String bucketName, String objectKey) {


        
        try {
            
            DeleteObjectRequest del = DeleteObjectRequest.builder()
                    .bucket(bucketName)
                    .key(objectKey)
                    .build();

            s3Client.deleteObject(del);
            
            System.out.println("Object " + objectKey + " has been deleted");
            
            
        } catch (S3Exception e) {
            System.err.println(e.awsErrorDetails().errorMessage());
            System.exit(1);
        }
        
    }
```

------
#### [ SDK for Python ]

**Example**  
L’exemple suivant illustre la suppression d’objets dans un compartiment de répertoires à l’aide du kit AWS SDK pour Python (Boto3).   

```
import logging
import boto3
from botocore.exceptions import ClientError

def delete_objects(s3_client, bucket_name, objects):
    '''
    Delete a list of objects in a directory bucket

    :param s3_client: boto3 S3 client
    :param bucket_name: Bucket that contains objects to be deleted; for example, '{{doc-example-bucket}}--{{usw2-az1}}--x-s3'
    :param objects: List of dictionaries that specify the key names to delete
    :return: Response output, else False
    '''

    try:
        response = s3_client.delete_objects(
            Bucket = bucket_name,
            Delete = {
                'Objects': objects
            } 
        )
        return response
    except ClientError as e:
        logging.error(e)
        return False
    

if __name__ == '__main__':
    region = '{{us-west-2}}'
    bucket_name = '{{BUCKET_NAME}}'
    objects = [
        {
            'Key': '{{0.txt}}'
        },
        {
            'Key': '{{1.txt}}'
        },
        {
            'Key': '{{2.txt}}'
        },
        {
            'Key': '{{3.txt}}'
        },
        {
            'Key': '{{4.txt}}'
        }
    ]
    
    s3_client = boto3.client('s3', region_name = region)
    results = delete_objects(s3_client, bucket_name, objects)
    if results is not None:
        if 'Deleted' in results:
            print (f'Deleted {len(results["Deleted"])} objects from {bucket_name}')
        if 'Errors' in results:
            print (f'Failed to delete {len(results["Errors"])} objects from {bucket_name}')
```

------

## En utilisant le AWS CLI
<a name="directory-download-object-cli"></a>

L’exemple de commande `delete-object` suivant illustre la façon d’utiliser l’ AWS CLI pour supprimer un objet d’un compartiment de répertoires. Pour exécuter cette commande, remplacez `{{user input placeholders}}` par vos propres informations.

```
aws s3api delete-object --bucket {{bucket-base-name}}--{{zone-id}}--x-s3 --key {{KEY_NAME}} 
```

Pour plus d’informations, consultez [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3api/delete-object.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3api/delete-object.html) dans la *Référence des commandes de l’AWS CLI *.

L’exemple de commande `delete-objects` suivant illustre la façon d’utiliser l’ AWS CLI pour supprimer des objets d’un compartiment de répertoires. Pour exécuter cette commande, remplacez `{{user input placeholders}}` par vos propres informations.

Le fichier `delete.json` est le suivant : 

```
{
    "Objects": [
        {
            "Key": "0.txt"
        },
        {
            "Key": "1.txt"
        },
        {
            "Key": "2.txt"
        },
        {
            "Key": "3.txt"
        }
    ]
}
```

Voici un exemple de commande `delete-objects` :

```
aws s3api delete-objects --bucket {{bucket-base-name}}--{{zone-id}}--x-s3 --delete file://{{delete.json}} 
```

Pour plus d’informations, consultez [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3api/delete-objects.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3api/delete-objects.html) dans la *Référence des commandes de l’AWS CLI *.