Как загрузить папку с диска Google с помощью терминала?

Самый легкий путь, вероятно, с awk:

awk 'BEGIN {FS=OFS="\t"} { $4 = $4 ";<>apple="$5; print $1, $2, $3, $4 }'

BEGIN блок гарантирует, что вкладка используется в качестве разделителя поля ввода, а также выходного разделителя.

63
29.06.2015, 06:04
7 ответов

Я смог загрузить общедоступный разделяемый файл, используя эту команду:

$ wget --no-check-certificate 'https://docs.google.com/uc?export=download&id=FILEID' -O FILENAME

Где FILEID должен быть заменен на фактический идентификатор файла. FILENAME - это путь/имена файла, где будет храниться файл для загрузки.

Обратите внимание, что вместо файловой папки нельзя использовать папку. Я использовал источник просмотра в просмотре папок, где я мог найти следующий HTML

49
27.01.2020, 19:32

wget может обрабатывать только прямые ссылки, но это не главная проблема. Google Drive ожидает, что вы аутентифицируетесь перед загрузкой файла. Это означает, что вам придется использовать веб-браузер для загрузки файла. Есть несколько веб-браузеров для терминала, lynx является примером.

Если вы решили публично поделиться своим файлом (чтобы кто-нибудь мог его скачать), вы можете использовать одну из многочисленных служб Google Drive permalink. Я считаю, что они должны создавать ссылки, которые будут работать с wget. Вот список двух, которые я нашел при поиске информации: http://gdriveurl.com/ http://gdurl.com/

Если предположить, что вы работаете под Linux, то для Google Drive есть клиент с открытым исходным кодом , который, возможно, стоит изучить.

7
27.01.2020, 19:32

Вы можете попробовать, если вы находитесь на Firefox, устанавливая Cliget Addon. Для каждого файла, который вы хотите загрузить программу, показывают, вы скручиваются, WGET или ARIA2 Direct Link для загрузки этого файла. Я использую это для скачивания файлов на других машинах через SSH, потому что для меня намного быстрее загружать непосредственно на удаленный компьютер, чтобы загрузить этот файл с моего компьютера. Это также работает с Dropbox, GDRive и т. Д.

5
27.01.2020, 19:32

Новый многоплатформенный клиент с открытым исходным кодом, написанный на Go и называемый диск , довольно приятный и полнофункциональный, а также находится в активной разработке.

Примеры

Команда pull загружает данные с Google Диска, которые не существуют локально, и удаляет локальные данные, которых нет на Google Диске. Запустите его без аргументов, чтобы извлечь все файлы по текущему пути:

 $ drive pull 
 

Также поддерживается извлечение по совпадениям

 $ cd ~ / myDrive / content / 2015 {{ 1}} $ drive pull --matches vines docx 
 

Дополнительные примеры см. По ссылке выше, это лишь верхушка айсберга.

9
27.01.2020, 19:32

Загрузите двоичный файл по ссылке ниже

chmod +x <binary>
./drive download id

Будет сгенерирована ссылка для кода подтверждения. Щелкните ссылку и разрешите доступ к gdrive и скопируйте проверочный код из браузера. Вставьте это.

У меня работает

4
27.01.2020, 19:32

Для файлов на диске Google, которые слишком велики, и вы получаете сообщение об ошибке «Google не может предоставить проверку на вирусы», вот решение, которое я использовал:

Сначала попробуйте загрузить файл здесь (выполните шаги, описанные выше):

$ wget --save-cookies cookies.txt --keep-session-cookies --no-check-certificate 'https://docs.google.com/uc?export=download&id=FILEID' -O- | sed -rn 's/.*confirm=([0-9A-Za-z_]+).*/Code: \1\n/p'

Затем, после того как мы получим код (он будет выведен на веб-страницу и выведен с помощью sed, описанного выше), используйте следующий URL-адрес:

$ wget --load-cookies cookies.txt 'https://docs.google.com/uc?export=download&confirm=CODE_FROM_ABOVE&id=FILEID'

Добавьте -O FILENAME к предыдущему оператору wget, чтобы указать имя файла, если вы хотите записать его в файл.

23
27.01.2020, 19:32

Вы можете использовать инструмент командной строки Linux / Unix с открытым исходным кодомgdrive.

Для установки:

  1. Загрузите двоичный файл. Выберите тот, который соответствует вашей архитектуре, например gdrive-linux-x64.

  2. Скопируйте его на свой путь.

    sudo cp gdrive-linux-x64 /usr/local/bin/gdrive;
    sudo chmod a+x /usr/local/bin/gdrive;
    

Чтобы использовать:

  1. Определите идентификатор папки Google Диска. Для этого перейдите в папку для загрузки с помощью веб-клиента drive.google.com. Теперь посмотрите на URL-адрес в адресной строке браузера, он покажет что-то вроде https://drive.google.com/drive/folders/0B7_OwkDsUIgFWXA1B2FPQfV5S8H. Получите строку после последнего /и скопируйте ее в буфер обмена. Это идентификатор папки.

  2. Загрузите папку. Конечно, вместо этого используйте ID вашей папки в следующей команде.

    gdrive download --recursive 0B7_OwkDsUIgFWXA1B2FPQfV5S8H
    

При первом использовании инструмент должен получить права доступа к API Google Диска. Для этого он покажет вам ссылку, которую вы должны посетить в браузере, а затем вы получите код подтверждения, который нужно скопировать и вставить обратно в инструмент. После этого загрузка начнется автоматически. Индикатора прогресса нет, но вы можете наблюдать за прогрессом в файловом менеджере или втором терминале.

Источник:Комментарий Тоби к вопросу stackoverflow.com. Ответ адаптирован из моего аналогичного ответа .

8
27.01.2020, 19:32

Теги

Похожие вопросы