Télécharger un fichier depuis Google Drive à partir du terminal

J’ai eu à restaurer un site dont les archives sont envoyées automatiquement sur Google Drive. C’est un peu compliqué pour les rapatrier depuis la console.

Voici la méthode la plus simple que j’ai trouvée:

    1. Rendre le fichier public
    2. Trouver l’ID du fichier
      Gdoc advanced sharing
      C’est le code qui ressemble à 1DQDioijcvsdf78qsdqsd586 dans le lien de partage. entre les /
    3. Si le fichier est suffisamment petit pour pouvoir être analysé par l’antivirus de Google :
      wget --no-check-certificate 'https://drive.google.com/uc?export=download&id=DOCUMENT_ID' -O FILENAME
    4. S’il est trop gros :
      curl -c /tmp/cookies "https://drive.google.com/uc?export=download&id=DOCUMENT_ID" > /tmp/confirmation.html
      curl -L -b /tmp/cookies "https://drive.google.com$(cat /tmp/confirmation.html | grep -Po 'uc-download-link" [^>]* href="\K[^"]*' | sed 's/\&/\&/g')" > FILENAME

Sources :