Saltar al contenido

Cómo eliminar varios archivos en un depósito S3 con AWS CLI

Te sugerimos que pruebes esta respuesta en un ambiente controlado antes de enviarlo a producción, saludos.

Solución:

Puede hacer esto proporcionando un --exclude o --include argumento varias veces. Pero tendrás que usar --recursive para que esto funcione.

Cuando haya varios filtros, recuerde que el orden de los parámetros del filtro es importante. La regla es que los filtros que aparecen más adelante en el comando tienen prioridad sobre los filtros que aparecen antes en el comando.

aws s3 rm s3://x.y.z/ --recursive --exclude "*" --include "purple.gif" --include "worksheet.xlsx"

Aquí, todos los archivos serán excluidos del comando a excepción de morado.gif y hoja de trabajo.xlsx.

Si no está seguro, intente siempre una --dryrun primero e inspeccione qué archivos se eliminarán.

Fuente: uso de filtros de exclusión e inclusión

s3 rm no puede eliminar varios archivos, pero puede usar s3api delete-objects para lograr lo que quieres aquí.

Ejemplo

aws s3api delete-objects --bucket x.y.z --delete '"Objects":["Key":"worksheet.xlsx","Key":"purple.gif"]'

Aparentemente, aws s3 rm solo funciona en archivos/objetos individuales.

A continuación se muestra un comando bash que construye comandos de eliminación individuales y luego elimina los objetos uno por uno. Funciona con cierto éxito (puede ser un poco lento, pero funciona):

aws s3 ls s3://bucketname/foldername/ | 
awk 'print "aws s3 rm s3://bucketname/foldername/" $4' | 
bash

Las primeras dos líneas están destinadas a construir los comandos “rm” y la tercera línea (bash) los ejecutará.

Tenga en cuenta que es posible que tenga problemas si los nombres de sus objetos tienen espacios o caracteres graciosos. Esto se debe a que el comando “aws s3 ls” no mostrará dichos objetos (a partir de este escrito)

Te mostramos las reseñas y valoraciones de los usuarios

Si aceptas, eres capaz de dejar una división acerca de qué te ha gustado de este escrito.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *