Automatic sync, as in Dropbox or the official Google Drive app for Windows or Mac, is the absolute worst. I don't want to waste bandwidth syncing incremental changes. I want control over sync prioritization—often a huge .iso can wait, but I need that 50kb text file as soon as I get home. Most of all, and especially important with the proliferation of online cloud editing tools, I can NEVER tolerate the possibility of a race condition if it's autosyncing while I'm editing online.
I'm a power user. I hate graphical interfaces. As Google Drive and Dropbox add features and accumulate more and more of my files, the GUIs slow down. As my folder structures get deeper and deeper, it takes longer and longer to dig down to the files I need. File management from the graphical interface is slow and can't be scripted. If I'm pushing stuff to Drive from a remote machine, I DEFINITELY don't want to mess with a GUI.
I need a command line tool. Google, through unofficial channels, has delivered.
drive - Command Line Google Drive Push/Pull Utility
Originally written by GitHub:rakyll, formerly of the Google Drive team, the aptly-named
drive
app is now actively developed by GitHub:odeke. The README explains it all. It works for Linux and Mac!Installation in Ubuntu:
This application is written in Google's Go! language, so you need to install that and designate a home directory with the
$GOPATH
environmental variable before you install drive
. For ease-of-use, you can then symlink the drive
executable somewhere that's already in the system $PATH
or add $GOPATH/bin
to the system $PATH
.$ sudo apt-get install golang git mercurial
$ mkdir -p /home/brandon/bin/go
$ GOPATH=/home/brandon/bin/go
$ export GOPATH
$ go get -u github.com/odeke-em/drive/cmd/drive
$ sudo ln -s /home/brandon/bin/go/bin/drive /usr/local/bin/drive
$ mkdir -p ~/drive/gmail
$ drive init ~/drive/gmail
You can then push and pull files to and from Drive with ease:
$ cd ~/drive/gmail
$ drive push folder/file
$ drive pull folder/folder/file
Double-bonus: you can push and pull from as many Google accounts as you want!
If you want to sync everything, just run drive pull from the root folder and pull it allll down. It checks for changes, so it'll only resync things that have changed.
You can also share, trash, move, rename, generate file lists and statistics, export Google Docs formats to other filetypes, and do lots of other stuff. See the README.
If you want to sync everything, just run drive pull from the root folder and pull it allll down. It checks for changes, so it'll only resync things that have changed.
$ mkdir ~/drive/work
$ drive init ~/drive/work
$ mkdir ~/drive/org
$ drive init ~/drive/org
HowToGeek complains that the tool is limited. Sure it is, if you're my grandma.
If you are my Grandma, check out something open source like grive or google-drive-ocamlfuse (free), or something proprietary like InSync ($15 per account, one-time).