터미널을 사용하여 Google 드라이브에서 폴더를 다운로드하는 방법은 무엇입니까?

터미널을 사용하여 Google 드라이브에서 폴더를 다운로드하는 방법은 무엇입니까?

터미널을 사용하여 Google 드라이브에서 폴더를 다운로드하고 싶나요? 이를 수행할 수 있는 방법이 있습니까? 나는 이것을 시도했습니다 :

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

하지만 다음 텍스트 파일을 다운로드하고 있습니다. folderview?id=0B-Zc9K0k9q-WdEY5a1BCUDBaejQ&usp=sharing터미널에서 Google 드라이브 폴더를 다운로드할 수 있는 방법이 있나요?

답변1

다음 명령을 사용하여 공개 공유 파일을 다운로드할 수 있습니다.

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

FILEID실제 파일 ID로 바꿔야 합니다 . FILENAME다운로드가 저장되는 경로/파일 이름입니다.

fileid 대신 폴더 ID를 사용할 수 없습니다. 다음 HTML을 찾을 수 있는 폴더 보기에서 소스 보기를 사용했습니다 <div id="entry-0B0jxxycBojSwVW.... 로 시작하는 문자열은 0Bfileid입니다.

답변2

2개의 유용한 Python 프로그램( sudo apt install -y python3 python3-pip: 필요):

  • 아래에: Google Drive에서 대용량 파일을 공개적으로 다운로드합니다(보안 공지로 인해curl/wget이 실패함). pip install gdown
  • gshell: 셸에서와 마찬가지로 Google 드라이브에서 탐색합니다(gshell = Google 드라이브 + 셸). pip install gshell(아마도단종)

GDrive에 업로드하려면 다음을 사용할 수 있습니다.https://labbots.github.io/google-drive-upload/.


예:

Google 드라이브(5GB)에서 대용량 공개 파일 1개를 다운로드하려면 다음 단계를 따르세요.

# syntax: gdown https://drive.google.com/uc?id=FILE-ID
gdown https://drive.google.com/uc?id=1LC5iVcvgksQhNVJ-CbMigqXnPAaquiA2

폴더 1개를 다운로드하려면:

gshell init              # log in to your Google account 
gshell ll                # list files
gshell download spam.txt # download file -> you could script to download all files listed by gshell ll

나는 그것을 사용했고 gdown훌륭하게 작동합니다. 나는 그것을 시도하지 않았습니다 gshell.

24시간 동안 약 20회 이상 사용하면 gdown(파일 크기에 따라 다름) 오류가 발생합니다.

다음 오류로 인해 액세스가 거부되었습니다.

  Too many users have viewed or downloaded this file recently. Please
  try accessing the file again later. If the file you are trying to
  access is particularly large or is shared with many people, it may
  take up to 24 hours to be able to view or download the file. If you
  still can't access a file after 24 hours, contact your domain
  administrator.

브라우저에서는 계속해서 파일에 액세스할 수 있습니다.

    https://drive.google.com/uc?id=1LC5iVcvgksQhNVJ-CbMigqXnPAaquiA2

답변3

Go로 작성된 최신 오픈 소스 다중 플랫폼 클라이언트는 다음과 같습니다.운전하다매우 아름답고 완벽하게 기능하며 활발하게 개발 중입니다.

pull 명령은 Google 드라이브에서 로컬에 존재하지 않는 데이터를 다운로드하고 Google 드라이브에 존재하지 않는 로컬 데이터를 삭제합니다. 현재 경로에서 모든 파일을 추출하려면 인수 없이 실행하세요.

$ drive pull

매칭을 통한 풀링도 지원됩니다.

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

더 많은 예시를 보려면 위 링크를 참조하세요. 이는 빙산의 일각에 불과합니다.

답변4

오픈 소스 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 폴더의 ID를 확인합니다.이렇게 하려면 Drive.google.com 웹 클라이언트를 사용하여 폴더로 이동하여 다운로드하세요. 이제 브라우저 주소 표시줄의 URL을 보면 다음과 같은 내용이 표시됩니다 https://drive.google.com/drive/folders/0B7_OwkDsUIgFWXA1B2FPQfV5S8H. 마지막 문자열 다음에 나오는 문자열을 가져와서 /클립보드에 복사하세요. 폴더의 ID입니다.

  2. 폴더를 다운로드합니다.물론 아래 명령에는 폴더 ID를 사용하세요.

    gdrive download --recursive 0B7_OwkDsUIgFWXA1B2FPQfV5S8H
    

이 도구를 처음 사용하는 경우 Google Drive API에 대한 액세스가 필요합니다. 이를 위해 브라우저에서 방문해야 하는 링크가 표시되며, 복사하여 도구에 다시 붙여넣을 수 있는 확인 코드가 제공됩니다. 그러면 다운로드가 자동으로 시작됩니다. 진행률 표시기는 없지만 파일 관리자나 두 번째 터미널에서 진행률을 볼 수 있습니다.

원천: 토비의 코멘트stackoverflow.com에 질문이 있습니다. 답변은 다음에서 수정되었습니다.거기에도 비슷한 답변이 있어요.

관련 정보