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文字付近で改行し、先頭にスペースが入りフィールドの継続を示している(メールヘッダにならっていると思われる)