ldif変換
utf8を含むフィールド中のldifはbase64エンコードされているのでそれを標準に直す
#!/usr/bin/ruby -Ke require 'iconv' require 'base64' buf="" while line=gets line.gsub!(/\n|\r/,'') if line=~/^ (.+)$/ buf+=$1 else if buf=~/^(\w+):: (.+)$/ puts %Q!#{$1}: #{Iconv.iconv("eucjp","utf8",decode64($2))[0].gsub(' ','')}! else puts buf end buf=line end end
規則としては dn: (utf8) を dn:: (utf8のbase64エンコーディング)ただし、80文字付近で改行し、先頭にスペースが入りフィールドの継続を示している(メールヘッダにならっていると思われる)