Самый легкий путь, вероятно, с awk
:
awk 'BEGIN {FS=OFS="\t"} { $4 = $4 ";<>apple="$5; print $1, $2, $3, $4 }'
BEGIN
блок гарантирует, что вкладка используется в качестве разделителя поля ввода, а также выходного разделителя.
Я смог загрузить общедоступный разделяемый файл, используя эту команду:
$ wget --no-check-certificate 'https://docs.google.com/uc?export=download&id=FILEID' -O FILENAME
Где FILEID
должен быть заменен на фактический идентификатор файла. FILENAME
- это путь/имена файла, где будет храниться файл для загрузки.
Обратите внимание, что вместо файловой папки нельзя использовать папку. Я использовал источник просмотра в просмотре папок, где я мог найти следующий HTML
wget
может обрабатывать только прямые ссылки, но это не главная проблема. Google Drive ожидает, что вы аутентифицируетесь перед загрузкой файла. Это означает, что вам придется использовать веб-браузер для загрузки файла. Есть несколько веб-браузеров для терминала, lynx является примером.
Если вы решили публично поделиться своим файлом (чтобы кто-нибудь мог его скачать), вы можете использовать одну из многочисленных служб Google Drive permalink. Я считаю, что они должны создавать ссылки, которые будут работать с wget. Вот список двух, которые я нашел при поиске информации: http://gdriveurl.com/ http://gdurl.com/
Если предположить, что вы работаете под Linux, то для Google Drive есть клиент с открытым исходным кодом , который, возможно, стоит изучить.
Вы можете попробовать, если вы находитесь на Firefox, устанавливая Cliget Addon. Для каждого файла, который вы хотите загрузить программу, показывают, вы скручиваются, WGET или ARIA2 Direct Link для загрузки этого файла. Я использую это для скачивания файлов на других машинах через SSH, потому что для меня намного быстрее загружать непосредственно на удаленный компьютер, чтобы загрузить этот файл с моего компьютера. Это также работает с Dropbox, GDRive и т. Д.
Новый многоплатформенный клиент с открытым исходным кодом, написанный на Go и называемый диск , довольно приятный и полнофункциональный, а также находится в активной разработке.
Команда pull загружает данные с Google Диска, которые не существуют локально, и удаляет локальные данные, которых нет на Google Диске. Запустите его без аргументов, чтобы извлечь все файлы по текущему пути:
$ drive pull
Также поддерживается извлечение по совпадениям
$ cd ~ / myDrive / content / 2015 {{ 1}} $ drive pull --matches vines docx
Дополнительные примеры см. По ссылке выше, это лишь верхушка айсберга.
Загрузите двоичный файл по ссылке ниже
chmod +x <binary>
./drive download id
Будет сгенерирована ссылка для кода подтверждения. Щелкните ссылку и разрешите доступ к gdrive и скопируйте проверочный код из браузера. Вставьте это.
У меня работает
Для файлов на диске 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, чтобы указать имя файла, если вы хотите записать его в файл.
Вы можете использовать инструмент командной строки Linux / Unix с открытым исходным кодомgdrive
.
Для установки:
Загрузите двоичный файл. Выберите тот, который соответствует вашей архитектуре, например gdrive-linux-x64
.
Скопируйте его на свой путь.
sudo cp gdrive-linux-x64 /usr/local/bin/gdrive;
sudo chmod a+x /usr/local/bin/gdrive;
Чтобы использовать:
Определите идентификатор папки Google Диска. Для этого перейдите в папку для загрузки с помощью веб-клиента drive.google.com. Теперь посмотрите на URL-адрес в адресной строке браузера, он покажет что-то вроде https://drive.google.com/drive/folders/0B7_OwkDsUIgFWXA1B2FPQfV5S8H
. Получите строку после последнего /
и скопируйте ее в буфер обмена. Это идентификатор папки.
Загрузите папку. Конечно, вместо этого используйте ID вашей папки в следующей команде.
gdrive download --recursive 0B7_OwkDsUIgFWXA1B2FPQfV5S8H
При первом использовании инструмент должен получить права доступа к API Google Диска. Для этого он покажет вам ссылку, которую вы должны посетить в браузере, а затем вы получите код подтверждения, который нужно скопировать и вставить обратно в инструмент. После этого загрузка начнется автоматически. Индикатора прогресса нет, но вы можете наблюдать за прогрессом в файловом менеджере или втором терминале.
Источник:Комментарий Тоби к вопросу stackoverflow.com. Ответ адаптирован из моего аналогичного ответа .