添付ファイルが同封されたメールを展開する方法

Contents.

添付ファイルの形式について
UNIXによる方法
Windowsによる方法
Macintoshによる方法

 基本的に、添付ファイルが一緒に同封されたメールは、ネットスケープに付属しているメールツールや、windowsで利用されている最近のメールツールなどを利用していると、添付されたファイルが自動的に展開され、ファイルが別に作られたり、リンクが作られたりします。しかし、普段そのようなメールツールを利用しない人が添付ファイルの同封されたメールを受け取ってしまうと、そのデータは展開されずただのテキストファイルとして処理されてしまいます。ここで説明するのは、そういう風にただのテキストとして受け取ってしまったメール中の添付ファイルデータを手動で展開する方法についてです。

UNIXによる方法
 情報処理センターにあるサーバワークステーション(owani8、prex)には、uudeviewというプログラムがインストールされています。このコマンドを利用することで、BASE64uuencodeBinHexxxencodeなどの形式でエンコードされた添付データを取り出すことができます。
uudeviewの使い方
uudeview [オプション] [ファイル名]

基本的にオプションはつけなくても結構です。uudeviewコマンドに続いて、上に挙げたデータ形式が含まれているファイル名を入力して下さい。

実例

 ここではBASE64形式のデータが含まれるファイルを用い、そのファイル名をtestmail.txtとします。他のエンコード方式でエンコードされたデータも同様の手順で展開できます。

owani8% uudeview testmail.txt
Loaded from testmail.txt: 'test for BASE64.' (BASE64.):  part 1   Base64

Found 'UNKNOWN.001' State 16 Base64 Parts 1 OK

  -rw-r--r-- UNKNOWN.001     is OK   [d] (?=help) r  ←rコマンドでファイル名を修正
Enter new filename: test.jpg                         ←新しいファイル名の入力
  -rw-r--r-- test.jpg        is OK   [d] (?=help)    ←returnキーで実行
    File successfully written to /shm/17/ynarita/Mail/inbox/test.jpg
1 file decoded from 1 input file, 0 failed
owani8%

 上の例では、testmail.txtに含まれていた「UNKNOWN.001」というファイルを「test.jpg」というファイル名に変換して出力している様子を示しています。この例ではファイル名が不明になってしまった例を示しましたが、通常はファイル名がきちんと表示されることのほうが多いので、何も考えずリターンキーを押せば良いはずです。なぜ、UNKNOWN.001がjpgファイルであるかが分かるかというとは、実際にtestmail.txtの中身を見てみると、
----Next_Part(Thu_Nov_27_16:10:04_1997_945)--
Content-Type: Image/Jpeg
Content-Transfer-Encoding: base64
    
という感じで「Content-Type:」の部分にどういうファイルなのかを示す情報が含まれているからです。


windowsによる方法
 windowsのメールツールを利用していて、添付ファイルが展開できないような事態に陥ってしまった場合は、次の2つのうち、いずれかの作業を行うことで添付ファイルを展開できると思います。

必要な部分をコピーしたファイルをUNIXサーバ上へFTPして、
上記の手順で展開する。

デコード用のソフトウェアをインストールして展開する。

 UNIXの知識があって、FTPなどの操作が手軽に行える方は1番目の方法で行うのが手っ取り早いと思います。UNIXにあまり詳しくない人は、2番目の方法デコードすることになります。

デコード用のソフトウェアとして挙げられるものは、

winzip(Version6.2以降) シェアウェア windows3.1(16bit版)、windows95(32bit版)
wincode フリーウェア windows3.1、windows95(16bit版のみ)

があります。どちらのソフトも窓の杜エディタ・ファイル操作→圧縮・解凍・変換カテゴリの中に置いてあります。

winzipによる展開方法

 winzipバージョン6.2以降のものは、BASE64uuencodeBinHexxxencodeの形式でデコードされたファイルをいずれも展開することができます。方法は以下に示すとおりです。

wincodeによる展開方法

 wincodeはWinzip同様、windows3.1でもwindows95でも動作し、BASE64uuencodeBinHexxxencodeの形式でデコードされたファイルをいずれも展開することができるフリーウェアです。ただし16bit版しか存在しておらず、windows95のロングファイルネームにも対応していないので注意が必要です。展開方法は以下に示す通りです。

Macintoshによる方法
 Macの場合もwindows同様、

必要な部分をコピーしたファイルをUNIXサーバ上へFTPして、
上記の手順で展開する。

デコード用のソフトウェアをインストールして展開する。

というどちらの方法でもデコードすることがすることができます。2番目の方法を取る時に利用するMac用のデコードツールとしては、

Yet Another BASE64 Decoder フリーウェア

というものがあります。このソフトでは、BASE64uuencodeの形式でエンコードされた添付データを展開することができます。このソフトはinfo-macのミラーをしているサイトのcmpというディレクトリの下に置いてあります。東京大学のFTPサイトなどから入手してください。

 デコードの方法は、展開したいファイルをYA-Base64のアイコンにドラッグするだけでOKです。元のファイルがあった場所にデコードされたファイルが生成されます。

 ただ若干注意が必要なのは、エンコードされたファイル側で、展開するファイルのファイル名が設定されてない場合、YA-BASE64が勝手にファイル名をつけてしまうので、後で自分がわかりやすいように適切な名前に変更する必要があることです。


si96008@si.hirosaki-u.ac.jp(Yoshiteru Narita)