Tengo un gran cubo S3 con una estructura de "carpeta" anidada que contiene (entre otras cosas) archivos estáticos .json y .md. Tesis archivos están siendo servidos por S3 como text/plainen lugar de la correcta application/jsony text/markdown.
He actualizado los valores predeterminados del depósito para que las nuevas cargas tengan el tipo de contenido correcto.
¿Cuál es la mejor manera de recorrer el "árbol" y actualizar el tipo de contenido para los archivos que coinciden con una determinada extensión?

--acl=...A menos que desee ensuciarse las manos con boto / python u otra API de AWS, sospecho que su mejor opción sería usar
$ aws s3api copy-objectcon la--content-typebandera para copiar un objeto en sí mismo, configurando el nuevo tipo de contenido.Aquí está la documentación para s3api.
No hace falta decir que debe probar esto primero, antes de ejecutarlo recursivamente en todo su cubo.
fuente
Después de cavar un poco, descubrí que la
s3cmdherramienta puede hacer esto. Por ejemplo, para establecer archivos JSON en application / json:fuente
Como se mencionó anteriormente, puede usar la
awsherramienta de Amazon y usar s3api para copiar objetos sobre sí mismo, y usarmetadata-directive=REPLACEpara cambiar el tipo de contenido.Estoy poniendo esto aquí, porque a veces querrás iterar en los nombres de archivo que están almacenados en la base de datos, y así es como puedes hacerlo a través de cli.
fuente