Как скопировать файлы из colab или облачного хранилища на диск Google? - PullRequest
1 голос
/ 13 июня 2019

Я прочитал некоторый код по этой проблеме, но я не могу понять код. Может ли кто-нибудь помочь объяснить мне код?

# mount your drive
from google.colab import drive
drive.mount('/content/drive')
!gsutil -q -m cp -r gs://my-bucket-name drive /content/drive/My\ Drive/

Я хочу перенести файлы из облачного хранилища colab или google в gdrive. Что означает «диск / контент / диск / мой \ диск /» в коде? как я должен разобрать этот кусок кода. Если он работает для каталога, как мне изменить этот фрагмент кода, чтобы он работал для одного файла?

1 Ответ

1 голос
/ 14 июня 2019

gsutil cp -r делает рекурсивное копирование из одного или нескольких исходных файлов / каталогов в некоторый каталог назначения.Например, чтобы скопировать один или несколько каталогов в другой каталог, вы должны сделать:

gsutil cp -r src_folder1/ src_folder2/ dst_folder/

Итак, давайте объясним, что все происходит в вашем примере выше:

  • Сначала вы смонтируетеСодержимое вашего Google Диска, используя магию адаптера файловой системы под капотом через drive.mount(), в локальном каталоге по /content/drive.
  • Затем вы запускаете команду gsutil.gsutil видит аргумент "диск" как другой исходный файл (или каталог), который он должен скопировать в каталог "/ content / drive / My Drive /".Если файл / dir "диск" не существует, gsutil пропускает его и жалуется, что он не существует (но gsutil все равно будет копировать другие исходные аргументы в место назначения из-за флага -m, который заставляет его продолжать(где это возможно) при возникновении проблемы).

Итак, если вы хотите скопировать объект с именем «my-object-name» из корзины в корень вашего Google Диска, командавыглядеть примерно так:

!gsutil -q -m cp gs://my-bucket-name/my-object-name /content/drive/My\ Drive/

или, чтобы скопировать объект и назвать его как-нибудь по-другому:

!gsutil -q -m cp gs://my-bucket-name/my-object-name /content/drive/My\ Drive/some-new-name

Чтобы узнать больше о gsutil, его флагах верхнего уровня иего команда cp, проверьте веб-документы:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...