Imapのサーバーのユーザーディレクトリーに保存されているファイルの名前はMIMEではなく、UTF-7だそうです。
で、それを変換するperlスクリプトを作りました。作ったと言っても当該のCPANモジュールを呼び出すだけですが。
ただし、これには罠があって、CPANモジュールのIMAP-UTF-7の説明には間違いがあります。
ではなくて、
としないといけません。ずいぶん昔から指摘されているのに、直っていません^^;
スクリプト付けときます。GNU GPL 3.0 or laterっちゅうことで。
#!/usr/bin/perl
# imapdecode.pl
# by I Hieda (JE1SGH), 22 Apr 2016
# GNU GPL 3.0 or later
use Encode::IMAPUTF7;
$filename = @ARGV[0];
$outname=Encode::decode('IMAP-UTF-7',$filename);
binmode(STDOUT,":utf8");
print $filename," : ";
print $outname,"\n";
使い方としては、
for i in `ls`; do imapdecode.pl $i; done
などとします。
例えば、debianのフォーラム参照。