Début avec la commande AWS S3CMD par exemples

Début avec la commande AWS S3CMD par exemples

L'article suivant vous fournira quelques exemples de base sur la façon d'utiliser AWS s3cmd commande:

Tout lister

La première s3cmd Commande que nous allons couvrir répertoriera toutes les données (objets) disponibles sous notre compte AWS S3. Cela répertorie tous les seaux, les répertoires et les fichiers:

$ s3cmd la 

Créer un seau

Maintenant, il est temps de créer un nouveau seau. Vous pouvez considérer un seau comme un répertoire de haut niveau où vous pouvez stocker et trier vos données élégamment. Le nom du seau doit être unique sur tout le système, sinon vous recevrez une erreur: Erreur: S3 Erreur: 409 (BucketalReadyExists). Le premier seau que nous allons créer sera appelé linuxconfigorg:

$ s3cmd mb s3: // LinuxConfigorg Bucket 'S3: // LinuxConfigorg /' créé 

Liste tous les seaux disponibles

Maintenant, que nous avons créé notre premier seau, il est temps de confirmer son existence en répertoriant tous les seaux S3 existants:

$ S3CMD LS 2016-01-18 02:09 S3: // LinuxConfigorg 

Copier le fichier dans le seau

Notre seau S3: // LinuxConfigorg est disponible et prêt à recevoir nos données. Tout d'abord, nous devons créer un exemple de fichier, par exemple. foobar puis copiez-le sur notre nouveau seau:

$ echo linuxconfig.org> foobar $ cat foobar linuxconfig.org 

Copiez ce nouveau fichier dans notre seau linuxconfigorg:

$ S3CMD PUT FOOBAR S3: // LinuxConfigorg / 

Confirmez que le fichier a été copié:

$ S3CMD LS S3: // LinuxConfigorg / 2016-01-18 02:21 16 S3: // LinuxConfigorg / Foobar 


Copier les fichiers entre les seaux

Le s3cmd La commande vous permet également de copier des fichiers entre deux seaux S3. Dans l'exemple suivant, nous créerons d'abord un nouveau seau nommé linuxconfigorg2 Et puis nous copierons notre foobar Fichier situé dans linuxconfigorg se glisser linuxconfigorg2 seau:

$ s3cmd mb s3: // LinuxConfigorg2 Bucket 'S3: // LinuxConfigorg2 /' créé $ S3CMD CP S3: // LinuxConfigorg / Foobar S3: // LinuxConfigorg2 / Remote Copy: 'S3: // LinuxConfigorg / FooBar' -> 'S3 : // linuxconfigorg2 / foobar ' 

Déplacer les fichiers entre les seaux

Identique à la commande de copie, nous pouvons également déplacer les données entre les seaux. Dans l'exemple suivant, nous allons déplacer le fichier fooobar depuis linuxconfigorg2 se glisser linuxconfigorg et le renommer dans le processus pour foobar2:

$ s3cmd mv s3: // linuxconfigorg2 / foobar s3: // linuxconfigorg / foobar2 move: 's3: // linuxconfigorg2 / foobar' -> 's3: // linuxconfigorg / foobar2' 

À la suite du processus de déplacement de notre linuxconfigorg2 Le seau est maintenant vide:

$ S3CMD LS S3: // LinuxConfigorg2 / $ 

Synchroniser un répertoire régional

s3cmd La commande permet également une synchronisation de fichiers. Veuillez noter que la commande de synchronisation de S3CMD ne synchronise pas les répertoires vides. Il utilise MD5SUM et la taille de fichiers pour synchroniser les fichiers. Si votre répertoire est vide, il ne sera pas créé dans un seau de destination.
Exemple:

$ mkdir -p dir1 / dir2 / dir3 $ touch dir1 / dir2 / file2 $ s3cmd sync dir1 / s3: // linuxconfigorg / 

Dans l'exemple ci-dessus, nous avons créé trois répertoires ne contenant qu'un seul fichier dans dir2 annuaire. Par conséquent, s3cmd Commande répertoires vides omis, alors que seulement dir2 a été copié sur notre seau S3.

Création d'un répertoire / dossier

Il n'est pas nécessaire de créer un répertoire avant de télécharger vos données. Par exemple, la commande Linux suivante copie un fichier sur S3: // LinuxConfigorg / Bucket lors de la création d'un nouveau répertoire pendant le processus:

$ 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 -01-18 02:33 16 S3: // LinuxConfigorg / Foobar2 


Suppression du fichier

La commande Linux suivante supprimera les deux foobar et foobar2 Fichiers actuellement situés dans linuxconfigorg seau:

$ s3cmd rm s3: // linuxconfigorg / foobar2 s3: // linuxconfigorg / foobar delete: 's3: // linuxconfigorg / foobar2' delete: 's3: // linuxconfigorg / foobar' 

Comme tu peux le voir s3cmd La commande accepte plusieurs arguments et, par conséquent, nous pouvons supprimer plusieurs fichiers à l'aide d'une seule commande RM.

Vide entier seau

Ensuite, vous montrera comment supprimer tous les fichiers et répertoires dans un seau. Par exemple, la commande Linux suivante supprimera tous les fichiers et répertoires disponibles situés à l'intérieur linuxconfigorg Seau S3:

$ S3CMD DEL -R --FORCE S3: // LinuxConfigorg / Delete: 'S3: // LinuxConfigorg / Dir2 / File2' Delete: 'S3: // LinuxConfigorg / New_Directory / Foobar' 

Retirer le seau

Avant de retirer le godet S3, le seau doit être vide. En utilisant la commande précédente, nous avons supprimé tous les objets de linuxconfigorg Seau S3 et donc il peut maintenant être supprimé:

$ S3CMD RB S3: // LinuxConfigorg / Bucket 'S3: // LinuxConfigorg /' supprimé 

Fichier de compression avant le téléchargement

La commande Linux suivante est plus avancée car elle utilise des tuyaux et STDOUT pour d'abord compresser le fichier avec une compression GZIP maximale et le diffuser directement sur le seau S3:

$ Cat Foobar | gzip -9 | S3CMD PUT - S3: // LinuxConfigorg / Foobar.gz '' -> 'S3: // LinuxConfigorg / Foobar.gz '[partie 1, 36b] 36 sur 36 100% dans 1s 32.90 b / s fait 

Répertoire de compression avant le téléchargement

De façon similaire à la commande ci-dessus, nous pouvons également comprimer le répertoire entier avant qu'il ne soit téléchargé sur S3 Bucket:

$ TAR CZ DIR1 / | gzip -9 | s3cmd put - s3: // linuxconfigorg / dir1.le goudron.gz '' -> 'S3: // LinuxConfigorg / Dir1.le goudron.GZ '[Partie 1, 196b] 196 de 196 100% dans 0S 336.18 b / s fait 

Tutoriels Linux connexes:

  • Choses à installer sur Ubuntu 20.04
  • Choses à faire après l'installation d'Ubuntu 20.04 Focal Fossa Linux
  • Une introduction à l'automatisation Linux, des outils et des techniques
  • Commandes Linux: les 20 meilleures commandes les plus importantes que vous devez…
  • Commandes Linux de base
  • Ubuntu 20.04 Guide
  • Choses à faire après l'installation d'Ubuntu 22.04 Jammy Jellyfish…
  • Système linux hung? Comment s'échapper vers la ligne de commande et…
  • Masterring Bash Script Loops
  • Conseils de ligne de commande bash utiles et exemples de trucs - Partie 1