boto3を使用して、あるソースバケット内のすべてのファイルを他のターゲットバケットにコピーすることは可能ですか?ソースバケットには通常のフォルダ構造がありません。boto3 Pythonを使用してaws s3バケット間でファイルとフォルダを再帰的にコピーできますか?
Source bucket: SRC
Source Path: A/B/C/D/E/F..
where in D folder it has some files,
E folder has some files
Target bucket: TGT
Target path: L/M/N/
私はboto3を使用して、N個のフォルダの下にTGTバケットにフォルダCからSRCバケットの上からすべてのファイルとフォルダをコピーする必要があります。
APIを知っている人もいれば、このタスクを完了するために新しいPythonスクリプトを書く必要がありますか?
aws cliには[sync](http://docs.aws.amazon.com/cli/latest/reference/s3/sync.html)コマンドを使用できます。私が知っている限り、boto3には同等のものはありません。 – Alasdair
正しい。私たちはsyncまたはcpを使うことができます - aws cliでは再帰的ですが、私はboto3に必要です。そうでない場合は、それを実現するための独自のコードを記述する必要があります。私の理解は正しいですか? –
Bucket.objects.all()を使用して各オブジェクトのイテレータを取得し、s3transferを使用してそれをコピーする方法もあります。ここにobjects.all()またはfilter()の例があります:http://stackoverflow.com/questions/36042968/get-all-s3-buckets-given-a-prefix/36044264#36044264 – mootmoot