web-dev-qa-db-ja.com

Google Storageバケットからローカルフォルダーにファイルとフォルダーをダウンロードする

Google Cloud Storageからすべてのファイルをダウンロードする最良の方法は何ですか?

56

gsutilツール を見てください。 -R(再帰)および-m(マルチスレッド)オプションを指定したcpコマンドを使用できます。

gsutil -m cp -R gs://<bucket_name> .

そして、公開バケットで試してみたい場合は試してみてください

gsutil -m cp -R gs://uspto-pair .

マルチスレッドによって実現される高速化は非常に重要です。

$ time gsutil cp -R gs://uspto-pair/docs/2010-08-28 .
...

real    0m12.534s

$ time gsutil -m cp -R gs://uspto-pair/docs/2010-08-28 .
...

real    0m3.345s
86
Sebastian Kreft

gsutilが例外をスローしている場合(CommandException: Wrong number of arguments for "cp" command.)以下を試してください。

gsutil -m cp -R gs://BUCKETNAME ./LOCALFOLDERNAME
7
Lausbert

私の場合、ブラウザGUIでバケットに移動し、ファイルと「ファイルを保存」をクリックしたままにしていました。
これは明らかに複数のファイルにとって恐ろしいことですが、もちろんそれらを1つのファイルに圧縮できます(googleクラウドコンソールを使用)。

this threadを参照してください。

また、バケットがない場合は、 create create を実行してから、gcloud consoleを使用してバケットにアップロードできます。 gsutil cp file.tgz gs://<bucket>

2
Matthias

以下のコード例を使用して、Googleクラウドストレージからローカルフォルダーにフォルダーを直接ダウンロードしますos.system( 'gsutil -m cp -R gs:// abc/./downloadtolocal')

0
aksdev