郵件裏收到winmail.dat附件在linux下的解決辦法- tnef+convmv

不知廣大ubuntuer有沒有收到過帶個winmail.dat的郵件,我想在公司用ubuntu辦公的一定收到過不少這種麻煩郵件。而你完全不知道這個附件如何打開,甚至更慘的是原本附件在郵件中的文件也不幸被這個winmail.dat吃掉了。你也許會詢問這封郵件的發件人,這個時候對方多半也是一頭霧水,因爲人家用Outlook用的好好的,從來沒有聽說過這個問題,說得直白一點,就是完全不知道你在說什麼。
那麼winmail.dat到底是個啥東西呢?是M$的工具在編碼打包你的郵件進行發送時,如果按照默認指定的RTF格式,會把格式信息按照MS自己的一套標準存放在郵件體中(在此,強烈BS M$的這種做法),造成非Outlook客戶端不認識,無法正確解析。
你當然可以要求你的發件人不要用Outlook,或者不要用rtf格式,純文本或HTML均可。但是如果你做不到這點,也還是有辦法的。那就是使用 tnef。

安裝:
代碼:
sudo apt-get install tnef

使用:
代碼:
tnef winmail.dat

你也可以先用tnef -t winmail.dat 來看看包含的文件。
由於發件人用的大多是windows,一般這樣得到的附件在utf8的linux下,文件名都會是亂碼,無奈再用convmv轉一下文件名的編碼:

代碼:
convmv -f gbk -t utf8 --notest *

至此大功告成。

再用一行總結一下以上過程:

代碼:
tnef winmail.dat && tnef -t winmail.dat | xargs convmv -f gbk -t utf8 --notest

發佈了10 篇原創文章 · 獲贊 4 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章