GoogleCL - Brings Google services to the command line
GoogleCL is a command-line utility that provides access to various Google services. It streamlines tasks such as posting to a Blogger blog, adding events to Calendar, or editing documents on Google Docs.
Website / Download / System Requirements / Manual / How to setup GoogleCL on Windows
Google has announced the availability of a new tool called GoogleCL that will allow users to interact with the company's popular Web services directly from the command line. GoogleCL was developed in Python on top of the gdata-python-client library. It's an open-source software project that's hosted on Google Code and distributed under the Apache license.
Although modern desktop computing is increasingly dominated by graphical user interfaces, command line tools are still extremely useful for rapid interaction, simple programmatic automation, and remote system management. GoogleCL will make Google-hosted data more accessible to common command-line workflows. The GoogleCL tool offers an easy way to pipe your GMail contact list into sed and awk, or use a shell glob to specify which photos and movies to batch upload to Picasa and YouTube. It also supports Blogger, Google Calendar, and Google docs.
The first time that you access each individual service, it will prompt you for your username and then it will supply an OAuth link that you can copy and paste into a Web browser to complete the authentication process. After initial account configuration, the tool can be used in pipelines and other non-interactive command line workflows.
For more information about the tool, you can refer to the release announcement
that was published this morning in Google's open source blog.
google blogger post --tags "GoogleCL, awesome" --title "Test Post" "I'm posting from the command line"
google blogger post blogpost.txt
google blogger list title,url-site # List posts
google blogger delete --title "Test Post"
google delete --title "Silly post number [0-9]*" # Delete posts matching regex
google tag --title "Dev post" --tags "Python, software" # label an existing post
google calendar add "Dinner party with George today at 6pm" # add event to calendar
google calendar today # List events for today only.
google calendar list --date 2010-06-01,2010-06-30 # List events.
google calendar delete --title "Dinner party with George" # Delete an event.
google contacts add "J. Random Hacker, email@example.com"
google contacts list name,email --title "J. Random Hacker"
google contacts delete --title "J. Random Hacker"
google docs delete --title "Evidence"
google docs edit --title "Shopping list" --editor vim
google docs get --title "Homework [0-9]*"
google docs list title,url-direct --delimiter ": " # list docs
google docs upload the_bobs.csv ~/work/docs_to_share/*
google picasa create --title "Vermont Test" --tags Vermont vermont.jpg
google picasa get --title "Vermont Test" /path/to/download/folder
google picasa list title,url-direct --query "A tag"
google picasa post --title "Vermont Test" ~/old_photos/*.jpg # Add to an album
google picasa tag --title "Vermont Test" --tags "places"
google picasa delete --title "Vermont Test" # delete entire album
google youtube post --category Education --devtags GoogleCL killer_robots.avi
google youtube delete --title "killer_robots.avi"
google youtube list # list my videos
google youtube tag -n ".*robot.*" --tags robot