Supprimer les objets d’un bucket
Vous pouvez supprimer un ou plusieurs objets que vous avez déposés ou copiés sur un bucket.
Vous ne pouvez pas supprimer un objet si vous n’avez pas la permission write
ou full-control
sur le bucket qui contient l’objet. Pour en savoir plus, voir Référence des Access Control List (ACL).
Si vous avez activé le versioning sur votre bucket, vous devez spécifier l’attribut version-id
de la version que vous voulez supprimer. Pour supprimer complètement un objet, vous devez supprimer toutes ses versions du bucket. Pour en savoir plus, voir Lister les versions d’un objet.
Supprimer les objets d’un bucket avec AWS CLI (s3api)
Avant de commencer : Installez et configurez AWS CLI. Pour en savoir plus, voir Installer et configurer AWS CLI. |
Supprimer un objet d’un bucket
Pour supprimer un objet d’un bucket, utilisez la commande delete-object en suivant cette syntaxe :
$ aws s3api delete-object \
--profile YOUR_PROFILE \
--debug \
--bucket BUCKET \
--key OBJECT \
--version-id qAfAAsAAuA00kclkg0A0AAuAAjaAtA. \
--endpoint https://oos.eu-west-2.outscale.com
Cette commande contient les attributs suivants que vous devez spécifier :
-
(optionnel)
profile
: Le profil nommé que vous voulez utiliser, créé pendant la configuration d’AWS CLI. Pour en savoir plus, voir Installer et configurer AWS CLI. -
bucket
: Le nom du bucket duquel vous voulez supprimer un objet. -
(optionnel)
debug
: Si inclus, renvoie un rapport détaillé de l’opération. Cet attribut est utile pour analyser et résoudre les problèmes que vous pouvez rencontrer. -
key
: Le nom de l’objet dans le bucket. -
(optionnel)
version-id
: Si le versioning du bucket a été activé au moins une fois, même s’il est désormais désactivé, l’ID de la version de l’objet que vous voulez supprimer.Si l’attribut
version-id
commence par un tiret ("-"), vous devez le spécifier en suivant cette syntaxe :--version-id=-qAfAAsAAuA00kclkg0A0AAuAAjaAtA.
-
endpoint
: Le endpoint correspondant à la Région à laquelle vous voulez envoyer la requête. Pour en savoir plus, voir Installer et configurer AWS CLI.
Si vous n’avez jamais activé le versioning du bucket, la commande delete-object ne renvoie aucun élément.
Si vous avez déjà activé le versioning du bucket au moins une fois, même si vous l’avez désactivé par la suite, la commande delete-object renvoie les éléments suivants :
-
VersionId
: L’ID de la version de l’objet que vous avez supprimé. -
DeleteMarker
: Si vous avez supprimé un objet sans spécifier son ID de version, la création d’un delete marker (toujourstrue
). Pour en savoir plus, voir À propos des delete markers.Exemple de résultat{ "VersionId": "IlkGwkYgCoITL6SNC5lpj2um8vNnDqD", "DeleteMarker": true }
Supprimer plusieurs objets d’un bucket
Pour supprimer plusieurs objets d’un bucket, utilisez la commande delete-objects en suivant cette syntaxe :
$ aws s3api delete-objects \
--profile YOUR_PROFILE \
--bucket BUCKET \
--delete '{"Objects": [{"Key": "OBJECT_1"}, {"Key": "OBJECT_2", "VersionId": "B1WsEK0saANNAKcOAJj0aIA00RozTpzr"}], "Quiet": false}' \
--endpoint https://oos.eu-west-2.outscale.com
Cette commande contient les attributs suivants que vous devez spécifier :
-
(optionnel)
profile
: Le profil nommé que vous voulez utiliser, créé pendant la configuration d’AWS CLI. Pour en savoir plus, voir Installer et configurer AWS CLI. -
bucket
: Le nom du bucket duquel vous voulez supprimer des objets. -
delete
: Informations à propos des objets que vous voulez supprimer. Cet élément contient les attributs suivants que vous devez spécifier :-
Objects
: La liste des objets que vous voulez supprimer.-
Key
: Les noms des objets dans le bucket.Vous pouvez spécifier jusqu’à 1000 keys.
-
(optionnel)
VersionId
: Si le bucket versioning était activé, même s’il ne l’est désormais plus, les ID de versions des objets que vous souhaitez supprimer. -
(optionnel)
quiet
: Sitrue
, ne renvoie que les keys des objets qui n’ont pas pu être supprimés.
-
-
-
endpoint
: Le endpoint correspondant à la Région à laquelle vous voulez envoyer la requête. Pour en savoir plus, voir Installer et configurer AWS CLI.
Si vous n’avez jamais activé le versioning sur ce bucket, la commande delete-objects renvoie les éléments suivants :
-
Key
: Les noms des objets que vous avez supprimés.
{
"Deleted": [
{
"Key": "OBJECT_1"
},
{
"Key": "OBJECT_2"
}
]
}
Si vous avez activé le versioning du bucket au moins une fois, même si vous l’avez désactivé par la suite, la commande delete-objects renvoie les éléments suivants :
-
Deleted
: Informations à propos des objets que vous avez supprimés. Cet élément contient les informations suivantes :-
Key
: Les noms des objets que vous avez supprimés. -
DeleteMarker
: Si vous avez supprimé des objets sans spécifier leur ID de version, la création d’un delete marker (toujourstrue
). Pour en savoir plus, voir À propos des delete markers. -
DeleteMarkerVersionId
: Si le versioning du bucket est activé, les ID de versions des delete marker. -
VersionID
: Si vous avez spécifié les ID de versions des objets, les ID de versions des objets que vous avez supprimés.
-
{
"Deleted": [
{
"Key": "OBJECT_1",
"DeleteMarker": true,
"DeleteMarkerVersionId": "yCYmn.BwXmCViMvaCBrUz-eGUKwJK4r"
},
{
"Key": "OBJECT_2",
"VersionId": "B1WsEK0saANNAKcOAJj0aIA00RozTpzr"
}
]
}
Supprimer les objets d’un bucket avec AWS CLI (s3)
Avant de commencer : Installez et configurez AWS CLI. Pour en savoir plus, voir Installer et configurer AWS CLI. |
Pour supprimer plusieurs objets d’un bucket, utilisez la commande rm en suivant cette syntaxe :
$ aws s3 rm s3://YOUR_BUCKET/YOUR_OBJECT \
--profile YOUR_PROFILE \
--dryrun \
--endpoint https://oos.eu-west-2.outscale.com
Cette commande contient les attributs suivants que vous devez spécifier :
-
s3://YOUR_BUCKET/YOUR_OBJECT
: Le chemin vers l’objet que vous voulez supprimer du bucket.Vous pouvez spécifier le version ID d’un objet en suivant cette syntaxe :
s3://YOUR_BUCKET/YOUR_OBJECT?versionID=<YOUR_VERSION_ID>
. -
(optionnel)
profile
: Le profil nommé que vous voulez utiliser, créé pendant la configuration d’AWS CLI. Pour en savoir plus, voir Installer et configurer AWS CLI. -
(optionnel)
dryrun
: Fournit une vue d’ensemble des opérations effectuées par la commande sans pour autant l’exécuter. Vous pouvez l’utiliser comme mesure de sécurité pour examiner l’impact d’une commande avant de l’exécuter. -
endpoint
: Le endpoint correspondant à la Région à laquelle vous voulez envoyer la requête. Pour en savoir plus, voir Installer et configurer AWS CLI.
Supprimer les objets d’un bucket avec s3cmd
Vous pouvez gérer vos ressources de stockage objet en utilisant des commandes s3cmd. Pour en savoir plus, voir s3cmd. |
Pages connexes
AWS™ et Amazon Web Services™ sont des marques de commerce d'Amazon Technologies, Inc. ou de ses affiliées aux États-Unis et/ou dans les autres pays.