El control y la gestión de datos pueden ser una tarea ardua. Estos comandos de AWS S3 lo ayudarán a administrar de manera rápida y eficiente sus depósitos y datos de AWS S3.
AWS S3 es el servicio de almacenamiento de objetos proporcionado por AWS. Es el servicio de almacenamiento más utilizado de AWS que puede almacenar virtualmente una cantidad infinita de datos. Es altamente disponible, duradero y fácil de integrar con varios otros servicios de AWS.
AWS S3 puede ser utilizado por personas con cualquier requisito, como almacenamiento de aplicaciones móviles/web, almacenamiento de big data, almacenamiento de datos de aprendizaje automático, alojamiento de sitios web estáticos y muchos más.
Si ha estado usando S3 en su proyecto, sabrá que dada la gran cantidad de capacidad de almacenamiento, la administración de cientos de depósitos y terabytes de datos en estos depósitos puede ser un trabajo exigente. Tenemos una lista de comandos de AWS S3 con ejemplos que puede usar para administrar sus depósitos y datos de AWS S3 de manera eficiente.
Tabla de contenido
Configuración de la CLI de AWS
Una vez que haya descargado e instalado correctamente la AWS CLI, debe configurar las credenciales de AWS para poder acceder a su cuenta y servicios de AWS. Veamos rápidamente cómo puede configurar la CLI de AWS.
El primer paso es crear un usuario con acceso programático a la cuenta de AWS. Recuerde marcar esta casilla cuando cree un usuario para AWS CLI.
Dar los permisos y crear un usuario. En la pantalla final, después de crear con éxito este usuario, copie el ID de la clave de acceso y la clave de acceso secreta para este usuario. Usaremos estas credenciales para iniciar sesión a través de la CLI de AWS.
Ahora ve a la terminal de tu elección y ejecuta el siguiente comando.
aws configure
Introduzca el ID de la clave de acceso y la clave de acceso secreta cuando se le solicite. Seleccione cualquier región de AWS de su elección y el formato de salida del comando. Personalmente prefiero usar el formato JSON. Esto no es gran cosa, siempre puede cambiar estos valores más tarde.
Ahora puede ejecutar cualquier comando de la CLI de AWS en la consola. Pasemos ahora a través de los comandos de AWS S3.
c.p.
El comando cp simplemente copia los datos hacia y desde los depósitos S3. Se puede usar para copiar archivos de local a S3, de S3 a local y entre dos cubos de S3. Hay muchos otros parámetros que puede proporcionar con los comandos.
Por ejemplo, el parámetro -dryrun para probar el comando, el parámetro -storage-class para especificar la clase de almacenamiento de sus datos en S3, otros parámetros para configurar el cifrado y mucho más. los comando cp le brinda control total sobre cómo configura la seguridad de sus datos en S3.
Uso
aws s3 cp <SOURCE> <DESTINATION> [--options]
Ejemplos
Copie datos de local a S3
aws s3 cp file_name.txt s3://bucket_name/file_name_2.txt
Copie datos de S3 a local
aws s3 cp s3://bucket_name/file_name_2.txt file_name.txt
Copie datos entre depósitos S3
aws s3 cp s3://bucket_name/file_name.txt s3://bucket_name_2/file_name_2.txt
Copie datos de local a S3 – IA
aws s3 cp file_name.txt s3://bucket_name/file_name_2.txt --storage-class STANDARD_IA
Copie todos los datos de una carpeta local a S3
aws s3 cp ./local_folder s3://bucket_name --recursive
ls
los ls comando se utiliza para enumerar los cubos o el contenido de los cubos. Entonces, si simplemente desea ver información sobre sus cubos o los datos en estos cubos, puede usar el comando ls.
Uso:
aws s3 ls NONE or <BUCKET_NAME> [--options]
Ejemplos
Enumerar todos los cubos en la cuenta
aws s3 ls Output: 2022-02-02 18:20:14 BUCKET_NAME_1 2022-03-20 13:12:43 BUCKET_NAME_2 2022-03-29 10:52:33 BUCKET_NAME_3
Este comando enumera todos los cubos en su cuenta con la fecha de creación del cubo.
Enumerar todos los objetos de nivel superior en un cubo
aws s3 ls BUCKET_NAME_1 or s3://BUCKET_NAME_1 Output: PRE samplePrefix/ 2021-12-09 12:23:20 8754 file_1.png 2021-12-09 12:23:21 1290 file_2.json 2021-12-09 12:23:21 3088 file_3.html
Este comando enumera todos los objetos de nivel superior en un depósito S3. Tenga en cuenta aquí que los objetos con el prefijo samplePrefix/ no se muestran aquí, solo los objetos de nivel superior.
Listar todos los objetos en un cubo
aws s3 ls BUCKET_NAME_1 or s3://BUCKET_NAME_1 --recursive Output: 2021-12-09 12:23:20 8754 file_1.png 2021-12-09 12:23:21 1290 file_2.json 2021-12-09 12:23:21 3088 file_3.html 2021-12-09 12:23:20 16328 samplePrefix/file_1.txt 2021-12-09 12:23:20 29325 samplePrefix/sampleSubPrefix/file_1.css
Este comando enumera todos los objetos en un depósito S3. Tenga en cuenta aquí que también se muestran los objetos con el prefijo samplePrefix/ y todos los subprefijos.
megabyte
los comando mb simplemente se usa para crear nuevos depósitos S3. Este es un comando bastante simple, pero para crear nuevos depósitos, el nombre del nuevo depósito debe ser único en todos los depósitos de S3.
Uso
aws s3 mb <BUCKET_NAME>
Ejemplo
Crear un nuevo depósito en una región específica
aws s3 mb myUniqueBucketName --region eu-west-1
m.v.
los comando mv simplemente mueve los datos hacia y desde los depósitos S3. Al igual que el comando cp, el comando mv se usa para mover datos de local a S3, S3 a local o entre dos depósitos de S3.
La única diferencia entre el comando mv y cp es que cuando se usa el comando mv, el archivo se elimina de la fuente. AWS mueve este archivo al destino. Hay muchas opciones que puede especificar con el comando.
Uso
aws s3 mv <SOURCE> <DESTINATION> [--options]
Ejemplos
Mover datos de local a S3
aws s3 mv file_name.txt s3://bucket_name/file_name_2.txt
Mover datos de S3 a local
aws s3 mv s3://bucket_name/file_name_2.txt file_name.txt
Mover datos entre depósitos S3
aws s3 mv s3://bucket_name/file_name.txt s3://bucket_name_2/file_name_2.txt
Mover datos de local a S3 – IA
aws s3 mv file_name.txt s3://bucket_name/file_name_2.txt --storage-class STANDARD_IA
Mueva todos los datos de un prefijo en S3 a una carpeta local.
aws s3 mv s3://bucket_name/somePrefix ./localFolder --recursive
prefirmar
El comando presign genera una URL prefirmada para una clave en el depósito S3. Puede usar este comando para generar direcciones URL que otros pueden usar para acceder a un archivo en la clave de depósito de S3 especificada.
Uso
aws s3 presign
Ejemplo
Genere una URL prefirmada que sea válida durante 1 hora para un objeto en el depósito.
aws s3 presign s3://bucket_name/samplePrefix/file_name.png --expires-in 3600 Output: https://s3.ap-south-1.amazonaws.com/bucket_name/samplePrefix/file_name.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIA4MCZT73PAX7ZMVFW%2F20220314%2Fap-south-1%2Fs3%2Faws4_request&X-Amz-Date=20220314T054113Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=f14608bbf3e1f9f8d215eb5b439b87e167b1055bcd7a45c13a33debd3db1be96
rb
El comando rb simplemente se usa para eliminar depósitos S3.
Uso
aws rb <BUCKET_NAME>
Ejemplo
Elimine un depósito de S3.
aws s3 mb myBucketName # This command fails if there is any data in this bucket.
Elimine un depósito de S3 junto con los datos del depósito de S3.
aws s3 mb myBucketName --force
rm
El comando rm simplemente se usa para eliminar los objetos en los depósitos S3.
Uso
aws s3 rm <S3Uri_To_The_File>
Ejemplos
Elimine un archivo del depósito S3.
aws s3 rm s3://bucket_name/sample_prefix/file_name_2.txt
Elimine todos los archivos con un prefijo específico en un depósito S3.
aws s3 rm s3://bucket_name/sample_prefix --recursive
Elimine todos los archivos en un depósito S3.
aws s3 rm s3://bucket_name --recursive
sincronizar
El comando sync copia y actualiza los archivos desde el origen al destino al igual que el comando cp. Es importante que entendamos la diferencia entre el comando cp y sync. Cuando usa cp, copia datos del origen al destino incluso si los datos ya existen en el destino.
Tampoco eliminará los archivos del destino si se eliminan del origen. Sin embargo, la sincronización mira el destino antes de copiar sus datos y solo copia los archivos nuevos y actualizados. los comando de sincronización es similar a confirmar y enviar cambios a una rama remota en git. El comando de sincronización ofrece muchas opciones para personalizar el comando.
Uso
aws s3 sync <SOURCE> <DESTINATION> [--options]
Ejemplos
Sincronizar carpeta local con S3
aws s3 sync ./local_folder s3://bucket_name
Sincronizar datos S3 a una carpeta local
aws s3 sync s3://bucket_name ./local_folder
Sincronizar datos entre dos cubos S3
aws s3 sync s3://bucket_name s3://bucket_name_2
Mueva datos entre dos cubos S3 excluyendo todos los archivos .txt
aws s3 sync s3://bucket_name s3://bucket_name_2 --exclude "*.txt
sitio web
Puede usar depósitos S3 para alojar sitios web estáticos. El comando del sitio web se usa para configurar el alojamiento del sitio web estático de S3 para su depósito.
Usted especifica el índice y los archivos de error y el S3 le proporciona una URL donde puede ver el archivo.
Uso
aws s3 website <S3_URI> [--options]
Ejemplo:
Configure el alojamiento estático para un depósito S3 y especifique los archivos de índice y error
aws s3 website s3://bucket_name --index-document index.html --error-document error.html
Conclusión
Espero que lo anterior le dé una idea sobre algunos de los comandos de AWS S3 que se usan con frecuencia para administrar depósitos. Si está interesado en obtener más información, puede consultar los detalles de la certificación de AWS.