Рейтинг:0

Использование gsutil в Windows для загрузки экспорта данных Google Workspace

флаг gs

Каков самый простой способ автоматической загрузки всех файлов экспорта в систему Windows?

Мне нужно загрузить полный экспорт данных Google Workspace с помощью Windows. Экспорт данных Google Workspace похож на Google Takeout, но для всей организации.

После создания экспортных файлов их можно загрузить один за другим с помощью веб-интерфейса или с помощью команды gsutil, предоставляемой тем же веб-интерфейсом.

gsutil -m cp -r \
  "gs://takeout-export-.../20210716T081530Z/CustomerOwnedData/" \
  "gs://takeout-export-.../20210716T081530Z/Ресурс:\ -10235762353432345231/"
  ...еще 50 строк
  .

Эта команда не работает из коробки в Windows.

До сих пор я сделал следующее

  • Удалено все \n делая это однострочным оператором.
  • Удален пробельный символ "\" внутри имени файла, так как он уже заключен в кавычки.

Проблема по-прежнему заключается в том, что имена файлов в экспорте содержат «:», что Windows не разрешает.
Я могу загружать отдельные папки, указав новое имя целевой папки, но это нужно делать вручную, папка за папкой.

Я попытался переписать команду в одну команду для каждой папки:

gsutil -m cp -r "gs://takeout-export-.../20210716T081530Z/Ресурс: -10235762353432345231/" "Ресурс: -10235762353432345231/"

Это работает только для папок с одним файлом внутри. В большинстве папок есть два файла, что приводит к следующему:

CommandException: URL-адрес назначения должен называть каталог, корзину или корзину.
подкаталог для формы с несколькими источниками команды cp.
CommandException: URL-адрес назначения должен называть каталог, корзину или корзину.
подкаталог для формы с несколькими источниками команды cp.
CommandException: 2 файла/объекта не могут быть переданы.

Далее я попытался переименовать папки "Ресурс:..."

gsutil -m mv "gs://takeout-export-.../20210716T081530Z/Resource: -10235762353432345231/" "gs://takeout-export-.../20210716T081530Z/Resource -10235762353432345231/"

Но это не удалось с:

AccessDeniedException: 403 ...@... не имеет доступа storage.objects.create к объекту Google Cloud Storage.

Думаю, у меня нет доступа для изменения файлов экспорта данных.

Какие знания мне как администратору необходимо знать, чтобы получить доступ к экспорту данных Google Workspace?

Mousumi Roy avatar
флаг us
Я подозреваю, что проблема в том, что префикс объекта GCS включает двоеточие, и это может вызвать проблемы для Windows. [Windows](https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file) не позволяет имени папки иметь некоторые специальные символы, включая ':'. Вы можете переименовать папку корзины (префикс объекта) без ':' и повторить попытку.
Рейтинг:1
флаг cn
Tom

Я тоже боролся с этим и прошел все те же шаги, что и вы. Я бы хотел, чтобы Google просто изменил свой протокол именования, чтобы он был совместим с Windows. Если бы у вас была собственная платная учетная запись в облаке, вы могли бы скопировать и при этом переименовать запрещенные имена файлов, но вы не можете сделать это в корзине на вынос, поскольку вы не можете ничего в нее написать.

Мое решение закончилось установкой дистрибутива Linux через WSL2, загрузкой с помощью gsutil, переименованием плохих папок и последующим копированием в доступное хранилище Windows.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.