コマンドラインでbase64する
通常ならば nkf -MBでいいのだが、バイナリデータのときには
-M[BQ] MIME に変換する。 JIS にコード変換してから BASE64 される。 -M ヘッダ形式に変換する -MB base64 stream に変換する
とのことなのでJISコードにしてから変換している。
実験例
$ echo -n 隣の客はよく柿食う客だ| nkf -MB;echo GyRCTlkkTjVSJE8kaCQvM0E/KSQmNVIkQ $ echo -n 隣の客はよく柿食う客だ| nkf -j | base64 GyRCTlkkTjVSJE8kaCQvM0E/KSQmNVIkQA== $ echo -n 隣の客はよく柿食う客だ| base64 6Zqj44Gu5a6i44Gv44KI44GP5p+/6aOf44GG5a6i44Gg $ echo -n 隣の客はよく柿食う客だ| ruby -e 'puts [STDIN.read].pack("m")' 6Zqj44Gu5a6i44Gv44KI44GP5p+/6aOf44GG5a6i44Gg
おしい、nkfがメールを標準とするために開発されたのだろうが…
でも実を言うとbase64ってコマンド知らなかったりしたorz