Terminal kullanarak google sürücüden bir klasör nasıl indirilir?


59

Terminal kullanarak google sürücümden bir klasör indirmek ister misiniz? Bunu yapmanın bir yolu var mı? Bunu denedim:

$ wget "https://drive.google.com/folderview?id=0B-Zc9K0k9q-WWUlqMXAyTG40MjA&usp=sharing"

Ama bu metin dosyasını indiriyor: folderview?id=0B-Zc9K0k9q-WdEY5a1BCUDBaejQ&usp=sharing. Google sürücü klasörünü terminalden indirmenin bir yolu var mı?



Onları kontrol ettim ancak google e-tablolarını kullanamıyorlar. E-tabloya ocamlfuseerişmem gerektiğinden ve bununla başa çıkabildiğim için, her zaman yüklemem gerektiğini düşündüm, montaj için zamandan sonra onlara ihtiyacım var. Ama başka seçeneğim yok.
user22180

Klasör ayarını "İnternet'teki herkes bulabilir ve görüntüleyebilir" olarak ayarlayın, sonra dosyayı wget https://googledrive.com/host/file_idsizin için indirebileceksiniz wget https://googledrive.com/host/0B-Zc9K0k9q-WdEY5a1BCUDBaejQ. Çözüm burada daha ayrıntılı olarak açıklanmıştır .
Paul Rougieux

Geçen süre içinde bunun için herhangi bir yeni cevap var mı? Aşağıda bir seçeneğimiz var.
Matan

Yanıtlar:


48

Bu komutu kullanarak ortak bir paylaşılan dosyayı indirebiliyordum:

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

Nerede FILEIDgerçek dosya numarası ile değiştirilmelidir. FILENAMEindirme işleminin kaydedileceği yol / dosya adıdır.

Not: fileid yerine bir folderid kullanamazsınız. Görünüm kaynağını aşağıdaki HTML'yi bulabileceğim bir klasör görünümünde kullandım <div id="entry-0B0jxxycBojSwVW.... 0Bİle başlayan dize fileid oldu.


4
Bu benim için harika çalıştı! bunun yerine drive.google.com
adresini

büyük bir dosyaya sahip olduğum için google virüs tarayıcısı uyarısını almaya devam ettim (tarama yapamıyor). Bu sorun için bir çözüm bulamadım. Ancak, scpdosyayı sunucuma aktarmak için kullanabileceğimi fark ettim (böyle bir indirme işlemine ihtiyaç duydum )
Matthias

2
bu artık google drive ile çalışmıyor ...
loretoparisi

2
Bu daha büyük dosyalar için işe yaramaz. Yığın taşmasındaki bu cevap bir cazibe gibi çalışır: stackoverflow.com/a/32742700/4773609
HG Sur

1
@HGSur Aşağıdaki cevabım büyük dosyalar için de işe yarıyor.
FrankerZ,

22

Çok büyük olan google sürücü dosyaları için ve "Google virüs taraması sağlayamıyor" hata iletisini alıyorsunuz, işte kullandığım çözüm:

Öncelikle dosyayı buradan indirmeyi deneyin (yukarıdaki adımları izleyin):

$ 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'

Sonra, kodu aldıktan sonra (Web sayfasına gönderilecek ve yukarıdaki sed komutunu kullanarak çıkacak), aşağıdaki URL'yi kullanın:

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

-O FILENAMEBir dosyaya yazmak istiyorsanız, bir dosya adı belirlemek için önceki wget deyimine ekleyin .


Bu bir cazibe gibi çalışıyor! Eklerseniz - content-disosition wget, dosyaya otomatik olarak doğru adı verir
Waleed Hamra

8

Go adıyla yazılmış yeni bir açık kaynaklı çok platformlu istemci, sürücü olarak adlandırılan oldukça hoş ve tüm özelliklere sahip ve aynı zamanda aktif bir gelişim içinde.

Örnekler

Çekme komutu, yerel olarak bulunmayan Google Drive'dan veri indirir ve Google Drive'da bulunmayan yerel verileri siler. Tüm dosyaları geçerli yoldan çekmek için herhangi bir argüman olmadan çalıştırın:

$ drive pull

Maçlara göre çekmek de desteklenir.

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

Diğer örnekler için yukarıdaki bağlantıya bakın, bunlar buzdağının sadece görünen kısmı.


1
Bu araç Eylül 2017 tarihinden beri
korunmuyor

Evet ama hala çalışıyor ve en iyi çözüm bir bütün dizin indirmek için: drive pull 'Colab Notebooks/sorted/models/resnet-101-90.9-max-acc'. Diğer yöntemler ise kıçtaki ağrıdır.
Avio

7

wgetyalnızca doğrudan bağlantıları kaldırabilir, ancak buradaki ana sorun bu değil. Google Drive, dosyanızı indirmeden önce kimliğinizi doğrulamanızı bekler. Bu, dosyayı indirmek için bir web tarayıcısı kullanmanız gerektiği anlamına gelir. Terminal için birkaç web tarayıcısı var, lynx buna bir örnek.

Dosyanızı herkese açık olarak paylaşmayı seçerseniz (böylece herkesin indirebilmesi için) çok sayıda Google Drive kalıcı bağlantı hizmetinden birini kullanabilirsiniz. Bunların wget ile çalışacak bağlantılar üretmesi gerektiğine inanıyorum. Bilgi ararken bulduğum iki listenin listesi: http://gdriveurl.com/ http://gdurl.com/

Linux kullandığınızı varsayarsak , Google Drive için araştırmaya değer olabilecek açık kaynaklı bir müşteri var .


Lynx, sürücüye erişmeye çalışırken 5 dakikadan fazla bir süredir "yönlendirme" gösteriyor. "Google Drive permalink" tamam, ancak bunu herkesle paylaşmak istemiyorum. Kullandım Griveve Ocamlfuseelektronik tablolara erişemiyorlar
user22180

Gdriveurl tarafından yayınlanan "indirme" bağlantısını onayladı wget ile çalıştı
Randall

açık kaynak kodlu müşteri önerisi ile ilgili olarak: bu gdrive istemcisini ve rclone adındaki benzer bir yardımcı programı kullanma deneyimimden, rclone ile daha iyi deneyimlerim oldu.
7yl4r

7

Ubuntu 17.04 deposunda dev bir program var: rclone

$ sudo apt update && sudo apt install rclone

$ rclone config --> than follow the steps to setup your gdrive

şimdi istediğiniz her şeyi kopyalayıp senkronize edebilirsiniz. Projeler her türlü bulutu destekliyor .. fe:

$ rclone sync /home/<usrname>/Desktop/yourfolder gdrivename:yourfolder

[1]: https://rclone.org

(btw yaklaşık 600GB yükledim ve birkaç saat içinde gdrive'dan gdrive'a rclone ile 1TB aktardım, gdrive'a ubuntu ve ubuntu'ya gdrive'a gdrive .. ve arka arkaya haftalar boyunca müthiş çalışıyor!

https://forum.rclone.org/t/can-copy-between-google-drive-accounts-without-download-and-upload-files/969/8

)


5

firefox kullanıyorsanız, cliget addon'u yükleyerek deneyebilirsiniz. Programı indirmek istediğiniz her dosya için size bu dosyayı indirmek için kıvrılma, wget veya aria2 direkt linkini gösterin. Bunu diğer makinelere ssh ile indirmek için kullanıyorum çünkü doğrudan uzaktaki bilgisayara indirmem ve o dosyayı bilgisayarımdan yüklemem çok daha hızlı. Bu aynı zamanda dropbox, gdrive vs. ile de çalışır.


5

Açık kaynaklı Linux / Unix komut satırı aracını kullanabilirsiniz gdrive.

Yüklemek için:

  1. İkili dosyayı indirin . Örneğin, mimarinize uygun olanı seçingdrive-linux-x64.

  2. Yoluna kopyala.

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

Kullanmak için:

  1. Google Drive klasörünün kimliğini belirleyin. Bunun için, drive.google.com web istemcisini kullanarak indirilecek klasörün içine gidin. Şimdi tarayıcının adres çubuğundaki URL’ye bakın, şöyle bir şey gösterecektir https://drive.google.com/drive/folders/0B7_OwkDsUIgFWXA1B2FPQfV5S8H. Sonuncunun arkasındaki dizeyi alın /ve panoya kopyalayın. Bu klasörün kimliği.

  2. Klasörü indir. Tabii ki, aşağıdaki komutun yerine klasörünüzün kimliğini kullanın.

    gdrive download --recursive 0B7_OwkDsUIgFWXA1B2FPQfV5S8H
    

İlk kullanımda, aracın Google Drive API’sına erişim izinleri alması gerekir. Bunun için size bir tarayıcıda ziyaret etmeniz gereken bir bağlantı gösterecek ve daha sonra kopyalayıp yapıştırmak için bir doğrulama kodu alacaksınız. İndirme daha sonra otomatik olarak başlar. İlerleme göstergesi yok, ancak ilerlemeyi bir dosya yöneticisinde veya ikinci terminalde görebilirsiniz.

Kaynak: Bir stackoverflow.com sorusunda Tobi'nin bir yorumu . Cevap , oradaki benzer cevabımdan uyarlandı .


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.