賈伯斯先生過世後,突然冒出了很多文章,揭露出他不為人知的一面。但我在這裡要講的不是賈伯斯…(好吧,我現在開始有一點羞恥的感覺了…原來以為是正文的,其實也是廢話嗎?) 我想講的是「據說賈伯斯看到設計樣品超過三個按鍵就會生氣…」的傳聞。
我…也…是…
雖然還不到「生氣」的程度,但是拿起遙控器時一看到好多個按鈕,想看電視的雄心壯志當場就退避了 1.5 舍。
基於同樣的心態,平常在電腦裡如果想備份一個目錄下所有的東西時,要
1). 先按 Ctrl+A「全選」
2). 然後點擊「右鍵」
3). 再選擇「建立壓縮檔」
4). 接著給它一個適當的名稱
5). 最後按「確定」
這一串步驟,也讓我很倒彈,因為我懶得按這麼多按鍵。
我自己寫的 Hama 備份打包軟體就是「只要放在常需要備份的目錄下,然後點兩下啟動它」就完成以上工作了。Hama 會把同一個目錄下,所有不是以 Hama 開頭的檔案包成一個以時間為檔名的 *.tar 檔。
一方面是為了節省時間,另一方面是因為我很懶得等,所以我只有把東西包成一個檔,而沒有加以壓縮。隨著時間過去,備份檔愈來愈多,也佔了不少硬碟空間。於是,我就想著…嗯…那就該來把這些 *.tar 檔案壓縮一下,變成 *.gz 好了。
當然, Python 本身有內建 gzip 的模組,所以,只要在終端機裡切換到這個充滿備份檔的專案目錄下,然後鍵入:
import os, gzip
for i in os.listdir("./"):
input = open("./"+i, 'rb')
output = gzip.open("./"+i+'.gz', 'wb')
output.writelines(input)
output.close()
input.close()
這麼一來,這些 *.tar 檔就被壓縮好了。但是…只是為了壓縮檔案而已,就要寫七行程式…想到就覺得有一股懶意從心頭升起…
輕嘆一口氣以後,我決定直接偷懶,利用 Linux 本身的 gzip 程式來簡化這個步驟。也就是說:
import os
for i in os.listdir("./"):
os.system("gzip %s" %i)
完成!
這種在 Python 的程式碼裡利用 Linux 本身的 gzip 程式,而不用 Python 內建的 gzip 模組的感覺,就像自己花了錢、花了時間去外頭的烹飪教室學如何做好吃的青醬嫩雞義大利麵以後回到家…想到為了吃個麵,得要先去買食材,還要洗鍋子、洗碗、整理爐具…弄了半天,也不過是為了煮了一人份而已…輕嘆一口氣…還是拿起電話叫外送的好了。
拉拉雜雜講了這麼多,其實我一開始只想說「也許科技始真的終來自於人性,但人性永遠脫離不了惰性。」
0 意見:
張貼留言