Comenzando con el comando AWS S3CMD por ejemplos
- 4389
- 701
- Sr. Eduardo Menchaca
El siguiente artículo le proporcionará algunos ejemplos básicos sobre cómo usar AWS S3CMD
dominio:
Listar todo
La primera S3CMD
El comando que vamos a cubrir enumerará todos los datos (objetos) disponibles en nuestra cuenta AWS S3. Esto enumerará todo, cubos, directorios y archivos:
$ S3CMD LA
Crear un cubo
Ahora, es hora de crear un nuevo cubo. Puede pensar en un cubo como un directorio de nivel superior donde puede almacenar elegantemente y ordenar sus datos. El nombre del cubo debe ser único en todo el sistema, de lo contrario recibirá un error: Error: S3 Error: 409 (bucketAlreadyExists)
. El primer cubo que vamos a crear se llamará linuxconfigorg
:
$ S3CMD MB S3: // LinuxConfigorg Bucket 's3: // linuxconfigorg/' creado
Lista todos los cubos disponibles
Ahora, que hemos creado nuestro primer cubo, es hora de confirmar su existencia enumerando todos los cubos S3 existentes:
$ S3CMD LS 2016-01-18 02:09 S3: // LinuxConfigorg
Copiar el archivo en el cubo
Nuestro cubo s3: // linuxconfigorg
está disponible y está listo para recibir nuestros datos. Primero, necesitamos crear algún archivo de muestra, por ejemplo,. foobar
y luego cópielo a nuestro nuevo cubo:
$ Echo LinuxConfig.org> Foobar $ Cat Foobar LinuxConfig.organizar
Copiaramos este nuevo archivo en nuestro cubo linuxconfigorg
:
$ S3CMD Pon Foobar S3: // LinuxConfigorg/
Confirme que el archivo se haya copiado:
$ S3CMD LS S3: // LinuxConfigorg/2016-01-18 02:21 16 S3: // LinuxConfigorg/Foobar
Copiar archivos entre cubos
El S3CMD
El comando también le permite copiar archivos entre dos cubos S3. En el siguiente ejemplo, primero crearemos un nuevo cubo llamado LinuxConfigorg2
y luego copiaremos nuestro foobar
archivo ubicado en linuxconfigorg
balde LinuxConfigorg2
balde:
$ s3cmd mb s3: // linuxconfigorg2 bucket 's3: // linuxconfigorg2/' creado $ s3cmd cp s3: // linuxconfigorg/foobar s3: // linuxconfigorg2/copia remota: 's3: // linuxconfigorg/foobar' -> 's3 s3 : // linuxconfigorg2/foobar '
Mover archivos entre cubos
Igual que con el comando de copia también podemos mover datos entre cubos. En el siguiente ejemplo vamos a mover el archivo fooobar
de LinuxConfigorg2
balde linuxconfigorg
y renombrarlo en el proceso para foobar2
:
$ S3CMD MV S3: // LinuxConfigorg2/Foobar S3: // LinuxConfigorg/Foobar2 Move: 's3: // linuxconfigorg2/foobar' -> 's3: // linuxconfigorg/foobar2'
Como resultado del proceso de movimiento nuestro LinuxConfigorg2
El cubo ahora está vacío:
$ S3CMD LS S3: // LinuxConfigorg2/$
Sincronizar un directorio local
S3CMD
El comando también permite una sincronización de archivos. Tenga en cuenta que el comando de sincronización de S3CMD no sincroniza directorios vacíos. Utiliza md5sum y filesize para sincronizar archivos. Si su directorio está vacío, no se creará dentro de un cubo de destino.
Ejemplo:
$ mkdir -p dir1/dir2/dir3 $ touch dir1/dir2/file2 $ s3cmd sync dir1/s3: // linuxconfigorg/
En el ejemplo anterior, hemos creado tres directorios que contienen un solo archivo dentro de dir2
directorio. Como resultado, S3CMD
El comando omitió directorios vacíos, mientras que solo dir2
ha sido copiado a nuestro cubo S3.
Creación de un directorio/carpeta
No hay necesidad de crear un directorio antes de cargar sus datos. Por ejemplo, el siguiente comando Linux copiará un archivo a s3: // linuxconfigorg/bucket mientras crea un nuevo directorio durante el proceso:
$ S3CMD PUT FOOBAR S3: // LinuxConfigorg/New_Directory/$ S3CMD la dir S3: // Linuxconfigorg/dir2/dir S3: // linuxconfigorg/new_directory/2016-01-18 02:21 16 S3: // linuxconfigorg/foobar 2016 2016 2016 2016 -01-18 02:33 16 S3: // LinuxConfigorg/Foobar2
Eliminar el archivo
El siguiente comando Linux eliminará ambos foobar
y foobar2
archivos actualmente ubicados dentro de linuxconfigorg
balde:
$ S3CMD RM S3: // LinuxConfigorg/Foobar2 S3: // LinuxConfigorg/Foobar Delete: 's3: // linuxconfigorg/foobar2' Eliminar: 's3: // linuxconfigorg/foobar'
Como se puede ver S3CMD
El comando acepta múltiples argumentos y, por lo tanto, podemos eliminar múltiples archivos utilizando un solo comando RM.
Bucket entero vacío
A continuación, le mostrará cómo eliminar todos los archivos y directorios dentro de un cubo. Por ejemplo, el siguiente comando de Linux eliminará todos los archivos y directorios disponibles linuxconfigorg
S3 Bucket:
$ s3cmd del -r --force s3: // linuxconfigorg/delete: 's3: // linuxconfigorg/dir2/file2' eliminar: 's3: // linuxconfigorg/new_directory/foobar'
Retirar el cubo
Antes de quitar el cubo S3, el cubo debe estar vacío. Usando el comando anterior, hemos eliminado todos los objetos de linuxconfigorg
Cubo s3 y, por lo tanto, ahora se puede eliminar:
$ S3CMD RB S3: // LinuxConfigorg/Bucket 's3: // linuxconfigorg/' eliminado
COMPRESIÓN ANTES ANTES DE SUGAR
El siguiente comando de Linux es más avanzado, ya que usa tuberías y stdout para primero comprimir el archivo con una compresión GZIP máxima y transmitirlo directamente a S3 Bucket:
$ Cat Foobar | GZIP -9 | S3CMD Put - S3: // Linuxconfigorg/Foobar.GZ '' -> 'S3: // LinuxConfigorg/Foobar.GZ '[Parte 1, 36b] 36 de 36 100% en 1S 32.90 b/s hecho
Directorio de comprimir antes de cargar
De manera similar al comando anterior, también podemos comprimir el directorio completo antes de que se cargue en el cubo S3:
$ Tar Cz Dir1/ | GZIP -9 | S3CMD Put - S3: // LinuxConfigorg/Dir1.alquitrán.GZ '' -> 'S3: // LinuxConfigorg/DIR1.alquitrán.GZ '[Parte 1, 196b] 196 de 196 100% en 0s 336.18 b/s hecho
Tutoriales de Linux relacionados:
- Cosas para instalar en Ubuntu 20.04
- Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
- Una introducción a la automatización, herramientas y técnicas de Linux
- Comandos de Linux: los 20 comandos más importantes que necesitas ..
- Comandos básicos de Linux
- Ubuntu 20.04 Guía
- Cosas que hacer después de instalar Ubuntu 22.04 Jellyfish de Jammy ..
- Sistema colgado de Linux? Cómo escapar a la línea de comando y ..
- Mastering Bash Script Loops
- Ejemplos de consejos y trucos de comandos de comandos útiles - Parte 1
- « Cómo cambiar la contraseña de usuario de MySQL desde la línea de comandos usando mysqladmin en Linux
- KIMAI - Implementación de instalación de Time Trakcer utilizando Docker »