2010年6月22日 星期二

郵件儲存格式

假若是個人郵件的備份那或許有很多種方式, 例如用 outlook 匯出就行, 但是我們也知道匯出後的檔案是微軟發明的 pst, 重點是它很容易壞掉, 連修復 pst 檔案的工具都有出, 不只如此, 連 outlook 本身也會掛, 救都救不回來; 這也沒甚麼, 程式都會掛, 但你掛掉我的郵件也要留著啊, 那難道沒有通用的郵件儲存格式嗎?

依稀記得在 linux, 當郵件收下來後是存成一個文字檔, 那這個文字檔是否就是一個通用的郵件儲存格式呢? 而且存成一個文字檔用文字編輯器就可以看了, 就算檔案壞掉一部分應該還是可以看到沒壞的部分吧?

谷歌了一下, 原來這個文字檔的檔案格式叫 mbox, 是一個公開的郵件儲存格式, 像 Thunderbird 就是把郵件存成 mbox 的檔案格式, 當然例如微軟的記事本也可以讀; 忽然想到, 那附件是怎麼存的?

試了一下在 Windows XP 安裝 Thunderbird 3, 把郵件抓回來之後, 果然是存成一個文字檔, 檔名為 Inbox, 而且連附件也可以存進去, 重點是郵件的內文用記事本就讀的到了; 當然附件是看不懂的, 除非你用眼睛就解的出來.

想要更進一步把這個 Inbox 餵給 openwebmail 來讀, 看看是否正常, 先複製貼上一封信, 用 vi 存檔 , ㄟ, 還真的可以讀; 那把 Inbox 用 ftp 傳上去應該也可以吧, 但結果有些奇怪, 怎麼還是只看到第一封信, 可是信件的大小卻是整個 Inbox 的大小, 這是哪裡出問題了? 難道只能讀到第一封信嗎? 但是這封信也打不開; 用眼睛看, 比對兩邊的檔案一樣啊, 那就不是 ftp 上傳的問題吧? 難道是我的眼睛有問題? 還是有隱藏關卡?

在困惑時, 忽然腦袋閃過, 有學過 DOS 與 linux 的文字檔案格式是不太一樣的, 好像是下一行的不同, 而且可以用工具來轉換, 在我殘存的記憶裡努力回想, 好像是叫做 dos 什麼的?

apt-cache search 一下果然有個轉換的工具叫 tofrodos, 趕緊裝起來試試, 奇怪怎麼沒 tofrodos 這個指令, 搞了半天原來裝好後就是要用 dos2unix, 原來我的記憶沒問題, 那為什麼要用 tofrodos 來混擾我?

啊哈, 果然有隱藏關卡, 不是我眼睛有問題, 用 dos2unix 轉換過後, 一切都正常了, openwebmail 都讀得到, 附件也沒問題, 打完收工.

沒有留言:

張貼留言