Yulong Niu

个人博客

命令行使用Google Drive

Posted at — Oct 21, 2016

推荐使用更更方便的VGrive

推荐使用更方便的ODrive

本文简单介绍gdrive,它是一个跨多个平台软件,提供命令行操作Google Drive。同类软件还有driveoverGrive(Linux下Google Drive界面客户端)。

基本思路:对每一个上传至Google Drive的文件或文件夹都分配一个Id,所以云端操作需要指定Id。

突出优点:自动同步,比较云端和本地文件后,决定上传、删除或者替换;同步加入版本控制,可以下载和删除不同版本文件。

1. 初始化

下载系统对应版本,执行gdrive about,根据提示设置。

2. 查找

查找规则

## 查找所有文件夹,不包括垃圾箱,所有者为自己
$ gdrive list --query "mimeType = 'application/vnd.google-apps.folder' and trashed = false and 'me' in owners"

## 加入上层目录Id
gdrive list --query "mimeType = 'application/vnd.google-apps.folder' and trashed = false and 'me' in owners and 'YUlPWWdLcy1mX2c' in parents"

## 查询信息
gdrive info YUlPWWdLcy1mX2c

3. 建立和删除

## 建立文件夹
$ gdrive mkdir newFolder

## 建立下一层文件夹,-p指定上层目录Id
$ gdrive mkdir -p M1h4M1dGYUhpSFE newFolder

## 删除文件(文件Id,非名称)
$ gdrive delete 0BzTeuubJesi

## 删除文件夹(文件Id,非名称)
$ gdrive delete -r 0BzTeuubJesi

4. 普通上传和下载

## 上传文件至制定文件夹
$ gdrive upload -p M1h4M1dGYUhpSFE myFile

## 下载文件
$ gdrive download 0BzTeuubJesi

5. 同步

## gdrive sync会标记同步文件,因此不要在同步文件夹中使用gdrive upload或者网页上传文件。未标记文件会被忽略。
## 同步列表
$ gdrive sync list

## 同步列表内容
$ gdrive sync content VUxydm5iMnM5LWs

## 上传
$ gdrive sync upload myLocaldir 0BzTeuubJesi

## 下载
$ gdrive sync download 0BzTeuubJesi myLocaldir

## 查询所有版本
gdrive revision list YUlPWWdLcy1mX2c

## 下载某一版本,最后两个Id分别为文件Id和版本Id
gdrive revision download YUlPWWdLcy1mX2c Y3JBWEJ5a0gwZndlR3hzWlZubFlUMWFnaHVnPQ

## 删除某一版本
gdrive revision delete YUlPWWdLcy1mX2c Y3JBWEJ5a0gwZndlR3hzWlZubFlUMWFnaHVnPQ

更新记录

2019年4月27日