[Mac] 用 Automator 的 Folder Action,自動將痞客邦備份檔移到 Dropbox

[Mac] 用 Automator 的 Folder Action,自動將痞客邦備份檔移到 Dropbox

自從搬到痞客邦上寫網誌之後,就常常有個習慣是要備份網誌,

免得有什麼意外發生,心血就都沒了 (不過網誌備份不含圖片,有點麻煩…)

平常按下 匯入匯出備份 > 匯出備份檔 的話,最後是自動下載到 ~/Downloads 目錄,

然後我就會再手動去把它移動到 Dropbox 目錄裡面,確保它有同步到雲端上面去~

 

不過這個移動檔案的動作每次都要做,有點麻煩,有什麼方法可以自動化呢?

其實像這種固定的工作,很適合用 Mac 的 Folder Action 來自動化,來看看怎麼做吧~

 

1. 開啟 Automator

按下 F4 > 搜尋 Automator,就能把 Automator 叫出來,

接著選擇 Folder Action:

Screen Shot 2016-10-07 at 12.03.43 AM

 

Folder Action 會將一個工作流程 (Workflow) 附加在一個目錄上面,

當目錄裡有新增時,就會觸發這個工作流程~

當我們選擇 Folder Action 之後,就可以看到如下的畫面,

讓我們開始設計這個工作流程:

Screen Shot 2016-10-07 at 2.23.20 PM

 

2. 設定這個 Folder Action 的工作流程

痞客邦匯出的備份檔檔名開頭固定是 blog-export-xxx,因此我想做的事情是:

當有檔案被新增到 ~/Downloads 目錄時,先把 Dropbox 裡舊的備份檔刪掉,

再將新的備份檔移動到 Dropbox 目錄下~

 

要撰寫這樣的工作流程有許多方法,可以直接用 Files & Folders 類別下的 Move file,

但我自己實驗了幾次,雖然我都是先 Move (Dropbox) file to Trash,

再 Move (Download) File to folder,但最後兩邊目錄的檔案都不見了,

讓我有點懷疑是不是 Move (Dropbox) file to Trash 還沒做完時,

就先跑去做了 Move (Download) file to folder,然後最後才把 Move (Dropbox) file to Trash 做完,

導致 Downloads 和 Dropbox 目錄下的備份檔都不見了…

由於我對 Automator 才剛開始學,不太理解這邊的奧秘為何…

 

後來用的是另一種方法,就是直接執行 shell script,

這樣要做的事情都由我的 script 來做,避開上述的奇怪問題~

 

先選擇右上方的 Folder Action receives files and folders added to,

決定這個 Folder Action 是應用到哪個目錄 (本例中是 ~/Downloads)。

接著從 Utilities 那邊拉一個 Run Shell Script 區塊到右邊,

在裡面打入下面的 shell script:

rm -rf ~/Dropbox/Settings/blog-export*
mv ~/Downloads/blog-export* ~/Dropbox/Settings/

 

 設定好的畫面像下面這樣:

Screen Shot 2016-10-07 at 2.58.38 PM

 

按下 Cmd+S 儲存,決定好這個 Folder Action 的名稱:

Screen Shot 2016-10-07 at 2.29.16 PM  

 

這樣子就完成了~

只要有檔名開頭 blog-export 的檔案被加到 ~/Downloads 目錄時,

就會執行 shell script 的內容,先刪掉 ~/Dropbox/Settings/blog-export*,

再把 ~/Downloads 目錄下的 blog-export* 移到 Dropbox 目錄下去~

再也不用自己動手了,很方便呀~^^

 

(本頁面已被瀏覽過 175 次)

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料