批次下載無名備份相簿 Script

最近無名要關了,我家寶貝之前也在那裡擺了一些東西,只好趕緊打包下載回來,不過無名還真是沒有誠意,相簿的內容居然只給下載的檔案列表,例如:

檔案列表裡全部都是相片的網址,例如

雖然官方有提供方法讓人大量下載,但都需要額外安裝軟體,還是不夠方便,所以一時心血來潮,寫了個 shell script 讓大家可以方便的把相簿的內容下載回來。

Script

這個程式只能應用在 unix-like 系統,如果是 windows 的使用者,還是用官方提供的方案比較簡單一些。

進入備份資料中的 album 資料夾,然後執行

程式會在 album 目錄下,依據相簿的編號,建立新的資料夾,並把下載下來的照片放到該資料夾中。

奇怪的 Awk Bug

環境: Mac OS 10.8.2

譬如下載列表檔案 1.txt 的內容如下

執行下列指令

應該要 print 出

但實際上卻是

感覺像是 $0 不會讓字串指標向前移動,所以後來的字串全部從位置 0 的地方開始輸出,把正確的內容給覆蓋掉了。即使我把 $0 設給另一個變數,或是改用 sprintf 都有一樣的結果。然而如果把 $0 放到字串的最末端,則不會產生問題,姑且把它當作一個 feature 來看,幸好只要改變參數的位置就可以繞過這個問題。

本來以為是 Mac OS X 內建的 awk 太舊了

不過從 Homebrew 安裝了新版的 (awk version 20121220) 之後,或是改用 gawk,問題依舊存在,或許是更底層的 lib 有問題吧!暫時也懶得去追究了。


One Comments

Leave a Reply