J'ai 200 000 fichiers dans un compartiment que je dois déplacer dans un sous-dossier à l'intérieur du même compartiment, quelle est la meilleure approche ?
Réponses
Trop de publicités?Récemment a été en mesure de le faire avec une seule commande. Il est également allé beaucoup plus vite que les demandes individuelles pour chaque fichier.
Exécution d'un extrait de code comme ceci :
aws s3 mv s3://bucket-name/ s3://bucket-name/subfolder --recursive --exclude "*" --include "*.txt"
Utilisez le drapeau --include
pour récupérer sélectivement les fichiers que vous souhaitez
J'ai eu ce même problème et j'ai fini par utiliser aws s3 mv
avec une boucle bash for
.
J'ai fait aws ls bucket_name
pour obtenir tous les fichiers dans le compartiment. Puis j'ai décidé quels fichiers je voulais déplacer et je les ai ajoutés file_names.txt
.
Puis j'ai lancé l'extrait suivant pour déplacer tous les fichiers :
for f in $(cat file_names.txt)
do
aws s3 mv s3://bucket-name/$f s3://bucket-name/subfolder/$f
done