Saturday, July 31, 2010

怕了吧,我用命令列玩Google | T客邦 - 我只推薦好東西

Cl001_custom_ GoogleCL就是指Google Command Line,這是一個可以讓你直接用命令列和Google服務溝通的工具。不論是Google文件、日曆、Picasa相簿或是YouTube影片,只要一行命令就可以直接上傳,而且還能執行一些額外的工作,例如編輯、刪除和條列等。

GoogleCL官方網站:http://code.google.com/p/googlecl

系統需求

  • Python 2.5或2.6

  • gdata 1.2.4以上

安裝方式

由於GoogleCL可以跨平台使用,每種平台安裝方式都不太相同,分別說明如下(以下教學以Unix-based系統為主):

Mac OS X

要在Mac OS X上安裝GoogleCL,請執行以下步驟:

  1. 安裝 MacPorts(下載位置:http://www.macports.org/install.php);

  2. 打開終端機,輸入 sudo port -v selfupdate,讓MacPorts更新程式列表;

  3. 安裝GoogleCL,請在終端機中輸入 sudo port install googlecl

GoogleCL需要Python和Gdata,不過如果你的電腦上沒有安裝這兩個程式的話,MacPorts會自動幫你安裝。

Linux(以Ubuntu為例)

想在Ubuntu上安裝GoogleCL,請執行以下步驟:

  1. 打開終端機,然後輸入 sudo apt-get install python-gdata

  2. 下載GoogleCL deb版本(下載網址:http://tinyurl.com/3x9xk57);

  3. 在終端機中移動到deb檔案所在的資料夾;

  4. 輸入 sudo dpkg -i googlecl*.deb

Windows

如果你要在Windows上安裝GoogleCL,請執行以下步驟:

  1. 下載並安裝Python(下載網址:http://python.org/download/);

  2. 下載 GData-python-client並解壓縮(下載網址:http://code.google.com/p/gdata-python-client/);

  3. 選擇「開始功能表」->「執行」,然後輸入 cmd

  4. 在純文字介面中,切換到GData的資料夾;

  5. 接著輸入 [python安裝位置]\python setup.py install,Gdata就會自動安裝;

  6. 下載GoogleCL(下載位置:http://tinyurl.com/236826h);

  7. 再一次切換到GoogleCL的資料夾;

  8. 請輸入 [python安裝位置]\python setup.py install,GoogleCL就會自動安裝。

Note:一般來說,在Windows底下Python 2.6的預設安裝目錄是:C:\python26\

用法

安裝好GoogleCL後,我們就可以開始用Google Command Line的強大功能了,在Unix-based中基本的命令結構如下:

google [服務] [工作] --[參數] [檔案]

其中服務是指你要使用的Google服務,而工作則是這個服務可執行的基本功能,例如上傳、刪除等。參數則是用來指定檔案名稱、標籤或是要使用的編輯器等參考資料,而檔案就是指你要處理的檔案了。這部分我們會在各個服務的介紹中再次說明。

Tips:如果你是用Windows系統,請使用 C:\Python26\python C:\Python26\Scripts\google 取代Unix-based系統中的 google 指令。另外現在GoogleCL仍然不能處理正體中文的檔名,因此檔名請用英文。

GoogleCL服務之一:Google Docs

GoogleCL中的Google Docs服務大概是最強大的功能了,你可以透過GoogleCL上傳、下載、刪除甚至編輯Google Docs,不過即使我們下了 --format 參數,下載文件時也只能以txt檔下載。而透過GoogleCL的部分也因為目前僅支援終端機中的純文字編輯器,如:vim或emacs等,所以也只有純文字的編輯能力。

不過還是有變通的方法,例如我就是利用reStructuredText(或簡稱ReST)這個輕量標籤語言來撰寫純文字檔,並使用Google Docs當作雲端儲存,ReST在需要的時候可以方便的轉換成html、pdf或odt檔,如果有需要也可以轉成Word檔來用,非常方便。

基本指令:Google docs [工作] --[參數] [檔案]

▲GoogleCL裡最好用的就是可以直接以純文字編輯器來編輯Google Docs上的檔案,打開終端機後,輸入 google docs edit --"文件名稱" --editor "vim" 就可以使用vim編輯該份文件,如果你的Google Docs上沒有相同檔案,則會開啟一份新文件。第一次使用GoogleCL時會請你建立使用者設定檔,請輸入Google帳號即可。

Tips:除了終端機內的純文字編輯器如vim和emacs之外,目前GoogleCL不支援任何GUI文字編輯器,如Notepad 等會無法存檔。不過現在版本的GoogleCL使用vim編輯時會有一點小問題,第一次開新檔時,請不要用 :w 存檔,而是用 :wq 存檔並退出,否則GoogleCL會無法儲存,第二次開啟相同的檔時,就可以使用 :w 來存檔了。至於emacs則是完全沒有問題。

▲接著GoogleCL就會自動連到Google Accounts的存取允許頁面,如果你有多個Google或Google App帳號的話,請選擇要使用的帳號。

▲然後請選擇「Grant access」按鈕允許GoogleCL存取你的Google帳號。

▲接著再次輸入GoogleCL指令。

▲因為我的Google Docs裡面沒有相同名稱的檔案,因此GoogleCL會自行建立一個新檔。

▲接著你就可以開始使用vim或是emacs等文字編輯器來編輯內容了。

▲編輯完成後,存檔並關閉文字編輯器,GoogleCL就會上傳你所做的更動,接著登入Google Docs你就可以看到剛剛建立的檔案了。

▲開啟檔案你就可以看到剛剛編輯的內容已經上傳了。

Google Docs 可執行的工作

delete

刪除檔案。範例:google docs delete --title "test123"刪除名為「test123」的檔案。

list

文件列表。範例:google docs list title,url-direct --delimiter ": "列出所有文件檔名及文件的直接連結,並且中間用冒號分隔。

upload

上傳文件。範例:google docs upload ~/Desktop/test123.doc上傳一個名為「test.doc」的檔案。

edit

編輯文件。範例:google docs edit --title "test123" --editor "vim"使用vim編輯一個名為「test123」的檔案,如果Google Docs裡面沒有相同名稱的檔案,則會建立一個新檔。

get

下載文件。範例:google docs get --title "test123"下載一個名為「test123」的檔案。

Google Docs 可使用的參數

title

文件名稱。

editor

使用的文字編輯器。

format

指定檔案格式,可使用「document」(文件)、「spreadsheet」(試算表)、「Presentation」(簡報)等。

delimiter

指定分隔符號。

folder

指定資料夾。

GoogleCL服務之二:Google Calendar

GoogleCL用在Google Calendar的時候可以執行新增、刪除、列表和顯示今天的行事曆等工作。

基本指令:Google calendar [工作] --[參數] [記事]

▲要直接從終端機新增記事,請輸入 google calendar add "記事",然後在第一次使用時也請輸入Google帳號並允許GoogleCL存取你的帳號。

▲接著打開Google Calendar,你就可以看到剛剛輸入的記事顯示在你的行事曆了。

Tips:由於是使用文字介面輸入行事曆,因此請使用Google Calendar的Quick add方式輸入記事,使用方式請參閱:http://tinyurl.com/25jvm8l

Google Calendar 可執行的工作

add

增加記事。範例:google calendar add "於 16:00 開會",這會在今天的行事曆上下午四點新增一筆「開會」的記事。

delete

刪除記事。範例:google calendar delete --cal "work" --title "開會",這個指令會刪除「work」行事曆裡名為「開會」的記事。

list

列出行事曆。範例:google calendar list --date 2010-05-01,2010-05-31這個指令會列出2010年5月1日到31日間所有的記事。

today

列出從現在起24小時內的行事曆。範例:google calendar today

Google Calendar 可使用的參數

title

記事的名稱。

cal

行事曆的名稱。

date

時間。在GoogleCL裡,時間表示的方式為「YYYY-MM-DD」(當天的行事曆)、「YYYY-MM-DD,」(當天以後的行事曆)、「YYYY-MM-DD,YYYY-MM-DD」(這兩天之間的行事曆)和「,YYYY-MM-DD」(當天以前的行事曆)。

query

搜尋所有的文字,包含記事標題、標籤和內文。

GoogleCL服務之三:Google Contacts

GoogleCL裡的Contacts服務可以直接從終端器輸入或刪除一筆聯絡資訊,並能新增或刪除聯絡人群組。

基本指令:google contacts [工作] [連絡人資訊]

▲要輸入單筆聯絡人資訊,請輸入 google contacts add "聯絡人名稱, 聯絡人電子郵件",目前仍無法輸入其他的聯絡資訊,另外如果想一次輸入多筆聯絡人的話,請用以上格式將所有聯絡人的資訊輸入到一個純文字檔中,並將副檔名改成 .csv 後,輸入 google contacts add xxx.csv

▲接著你就可以在Gmail裡的聯絡人裡找到剛剛輸入的聯絡人資訊了。

Google Contacts 可執行的工作

add

新增聯絡人。範例:google contacts add "PCHome編輯部, pchome@hmg.com.tw",這會在你的Gmail聯絡人裡新增一筆名為「PCHome編輯部」的聯絡人。

add-groups

新增聯絡人群組。範例:google contacts add-groups Friends,這會新增一個名為「Friends」的群組。

list

列出聯絡人。範例:google contacts list name,email,這會以「姓名,電子郵件」的格式列出所有聯絡人,中間逗號後不可有空格,目前測試電話仍無法顯示。

list-groups

列出所有的聯絡人群組。範例:google contacts list-groups

delete

刪除聯絡人。範例:google contacts delete "PCHome編輯部",這會刪除名為「PCHome編輯部」的聯絡人。

delete-groups

刪除聯絡人群組。範例:google contacts delete-groups "Friends",這會刪除名為「Friends」的聯絡人群組。

Google Contacts 可使用的參數

GoogleCL服務之四:Blogger

雖然現在大多數的使用者都偷懶去玩微網誌了,不過還是有努力的人會去寫部落格的。因此GoogleCL當然也就支援Blogger發布,讓這些勤勞的人使用。通常一篇部落格文章都很長,雖然你也可以直接輸入在指令中,不過還是建議將內文另外儲存到一份純文字檔裡,再用GoogleCL發布上去。

基本指令:google blogger [工作] --[參數] xxx.txt

▲要用GoogleCL來發布部落格文章,建議還是先寫在一份純文字檔中。

▲然後請輸入 google blogger post --tag "標籤" --title "文章標題" [內文純文字檔位置]

▲接著你就可以在你的部落格上面看到剛剛發布的文章了。

Google Blogger 可執行的工作

post

發布文章。範例:google blogger post --tag "test" --title "test" --draft "test",這會在你的Blogger主要部落格中建立一篇標籤、標題和內文都是「test」的文章,並存成草稿。

tag

為文章上標籤。範例:google blogger tag --title "test drive googlecl" --tag "test_drive",這會為「test drive googlecl」這篇文章加上「test_drive」的標籤。

list

列出部落格中所有文章和該文章的連結。範例:google blogger list --delimiter ": " --blog "PCHome Test",這會列出「PCHome Test」這個部落格(假設你有很多Blogger部落格在同一帳號下)中的所有文章,並以「:」分隔標題和網址。

delete

刪除一篇文章。範例:google blogger delete --title "test drive googlecl",這會刪除你的主要部落格中「test drive googlecl」這篇文章。

Google Blogger 可使用的參數

title

指定文章標題。

blog

指定部落格名稱。

delimiter

指定分隔符號。

draft

將文章儲存為草稿。

tag

指定標籤名稱。

GoogleCL服務之五:Picasa

GoogleCL的Picasa服務可以讓你直接上傳照片、建立相簿或著刪除照片和相簿等。

基本指令:google picasa create --title "[相簿名稱]" [要上傳的圖片位置]

▲如果要上傳照片到新相簿,請輸入 google picasa --title "[相簿名稱]" --tags "[相片標籤]" [要上傳的照片位置],這樣就會將你指定的照片上傳到Picasa中你指名的新相簿中,並加上標籤。

▲等指令跑完後,你就可以在指令的相簿裡找到剛剛上傳好的照片了。

Google Picasa 可執行的工作

create

建立新相簿。範例:google picasa create --title "test" ~/Desktop/xxx.jpg,這會將桌面上xxx.jpg這張照片上傳到Picasa中新建立的「test」相簿。

post

將照片傳到已有的相簿。範例:google picasa post --title "Tours" ~/Desktop/xxx.jpg,這會將桌面上xxx.jpg這張照片上傳到Picasa中的「Tours」相簿。

get

下載相簿裡的照片。範例:google picasa get --title "Tours" --query "SF" ~/Desktop/SFPhotos/,這會將「Tours] 相簿裡,標籤裡有「SF」字樣的照片全部下載到桌面上「SFPhotos」資料夾中。

delete

刪除相簿或照片。範例:google picasa delete --query "nude",將標籤裡有「nude」字樣的照片全都毀屍滅跡。

list

列出照片。範例:google picasa list --title "Tours" --delimiter ": ",這會將「Tours」相簿裡的所有照片和其直接連結都列出來,並以「: 」分隔。

list-albums

列出相簿。範例:google picasa list-albums --delimiter ": ",這會列出你所有的相簿和其直接連結,並以「: 」分隔。

tag

為照片加上標籤。範例:google picasa tag --query "SF" --tags "San Francisco",這會為標籤裡有「SF」字樣的照片加上「San Francisco」這個標籤。

Google Picasa 可使用的參數

title

相簿名稱。

query

搜尋字串。

delimiter

指定分隔符號。

tags

指定標籤名稱。

GoogleCL服務之六:YouTube

使用GoogleCL也可以讓你上傳、刪除和標籤YouTube影片。

基本指令:google youtube post xxx.avi

▲如果要上傳影片請用「post」指令,不過要注意的是,GoogleCL不支援中文檔名上傳。請輸入 google youtube post --category [類別名稱] [影片檔位置]就可以上傳影片。

▲然後進入你自己的YouTube頁面,就可以看到剛剛上傳的影片檔了。

Google YouTube 可執行的工作

post

發布影片。範例:google youtube post --category "Travel, Education" ~/Desktop/xxx.avi,這會將桌面上xxx.avi這個影片上傳到YouTube上,並加入「Travel」和「Education」兩個分類。

delete

刪除影片。範例:google youtube delete --title "xxx",這會刪除你的YouTube帳號裡名為「xxx」的影片。

list

列出影片。範例:google youtube list --tags "travel",這會列出所有標籤為「travel」的影片。

tag

為影片加上標籤。範例:google youtube tag --title "xxx" --tags "porn",為標題為「xxx」的影片加上「porn」標籤。

Google YouTube 可使用的參數

category

指定影片類別。

title

指定影片標題。

tags

指定影片標籤。

delimiter

指定分隔符號。

Posted via email from Hector 隨手記

Wednesday, July 28, 2010

把.CHM電子書轉成HTML網頁檔(NorthBright CHM Tool v1.0)

把.CHM電子書轉成HTML網頁檔(NorthBright CHM Tool v1.0)

 

 

 

在Windows系統中提供了各式各樣的說明文件,大部分說明文件都是使用副檔名為「.CHM」的檔案格式,很多軟體、應用程式的說明檔或幫助文件也都使用使用.CHM這種格式。在一般情況下這種.CHM說明檔其實還滿方便的,可以瀏覽、搜尋或依照標題或索引來查找想要的相關資訊。不過如果你想把.chm文件中的內容一篇一篇挖出來另外作處理的話則比較麻煩。

下面介紹的這個NorthBright CHM Tool免費小工具主要就是用來幫「.CHM」文件轉檔用的,它可以幫我們將原本彙整在單一.CHM文件檔中的一篇一篇的內容轉成一般瀏覽器都可以開啟、閱讀的HTML網頁格式,讓我們另外作其他的處理或應用。

 

 


Posted via email from Hector 隨手記

[Mac] 如何將虛擬機的硬碟變大(for VMware Fusion)