Comment faire pour copier des fichiers à travers des seaux à l'aide d'aws s3-bijou
Aws-s3 documentation dit:
# Copying an object
S3Object.copy 'headshot.jpg', 'headshot2.jpg', 'photos'
Mais comment puis-je copier heashot.jpg
de la photos
seau à la archive
seau par exemple
Merci!
Deb
Vous devez vous connecter pour publier un commentaire.
AWS SDK gem. S3Object#copy_to
Il utilise copy_object méthode interne, de sorte que la fonction de copie permet de copier des objets à l'intérieur ou entre votre S3, et éventuellement de remplacer les métadonnées associées à l'objet dans le processus.
Méthode Standard (download/upload)
Méthode de copie de
Exemple de Code:
À l'aide de la
right_aws
gem:gotcha, j'ai couru en est que si vous avez
pics/1234/yourfile.jpg
labucket
est seulementpics
et lakey
est1234/yourfile.jpg
J'ai eu la réponse à partir d'ici: Comment puis-je copier des fichiers entre des seaux à l'aide de s3 à partir d'une application rails?
Lors de l'utilisation du SDK AWS gem copy_from ou copy_to il y a trois choses qui ne sont pas copiées par défaut: ACL, de stockage de classe, ou côté serveur de chiffrement. Vous devez les spécifier comme des options.
https://github.com/aws/aws-sdk-ruby/blob/master/lib/aws/s3/s3_object.rb#L904
Ici est une simple classe ruby pour copier tous les objets à partir d'un seau à l'autre seau: https://gist.github.com/edwardsharp/d501af263728eceb361ebba80d7fe324
Pour quiconque cherche toujours, AWS a la documentation pour cela. C'est en fait très simple avec le
aws-sdk
gem:Je crois que pour la copie entre les seaux, vous devez lire le contenu du fichier de la source seau et puis l'écrire dans la destination seau via votre application espace mémoire. Il y a un extrait montrant ce à l'aide de
aws-s3
ici et une autre approche à l'aide deright_aws
iciAws s3-gem n'a pas la possibilité de copier des fichiers entre des seaux sans déplacer les fichiers vers votre ordinateur local. Si c'est acceptable pour vous, alors la liste suivante sera de travail:
J'ai rencontré le même problème que tu avais, si j'ai cloné le code source pour AWS S3 et faites une direction générale qui a
copy_to
méthode qui permet pour la copie entre les seaux, dont j'ai été le regroupement dans mes projets et de l'aide quand j'ai besoin de cette fonctionnalité. J'espère que quelqu'un d'autre va trouver cela utile ainsi.Vue de la direction sur GitHub.