Google Driveをコマンドラインから使用する

サーバを使用しているとき、Google Driveにサーバから直接アクセスしたいことがある。gdriveを使用した方法を説明する。

Goのインストトール

gdriveはgoで書かれているためGoをインストールする。詳しくはこちらが参考になる。Getting Started – The Go Programming Language 例えば、

  1. wget https://golang.org/dl/go1.15.linux-amd64.tar.gz
  2. tar -C ./ -xzf go1.15.linux-amd64.tar.gz 
  3. export PATH=$PATH:/usr/local/go/bin

gdriveのインストール

こちらのgithubページが参考になる。https://github.com/prasmussen/gdrive

  1. go get github.com/prasmussen/gdrive
  2. $GOPATH/binのパスを通す export PATH=$PATH:/path/to/go/bin

gdrive versionでバージョン情報が出力されればOK.

Google Driveの認証

gdrive listから認証しようとすると「このアプリでは「Google でログイン」機能が一時的に無効」とエラーが出る。解決方法はこちらが参考になる。https://github.com/prasmussen/gdrive/issues/546#issuecomment-626208303

gdrive listでファイルの一覧が表示されれば成功。

gdriveでよく使うコマンド

  • ファイルのダウンロード: $ gdrive download file_id
  • ディレクトリのダウンロード: $ gdrive download --recursive directory_id
  • ディレクトリのファイルリスト: $ gdrive list --query " 'IdOfTheParentFolder' in parents"
  • ファイルのアップロード: $ gdrive upload -p IdOfTheParentFolder filePath

参考

こちらも参考にしました。

Comments

タイトルとURLをコピーしました