コマンド
base64
BASE64 エンコーダ・デコーダ
base64 は、エンコード規則のひとつである Base64 規格にのっとった変換を行うコマンドである。Base64 は6ビットを A〜Z・a〜z・0〜9 と +・/ の記号の合計64文字にマッピングする規格である (実際はパディングとして = を使うので 65文字となる)。
文字列をエンコード・デコード
% echo abc | base64 -e
YWJjCg==
% echo 'YWJjCg==' | base64 -d
abc
なお上記例は echo コマンドを用いているため "abc(改行)" という文字列をエンコードしていることに注意。純粋な "abc" をエンコードしたければ下記のようにする。
% echo -c abc | base64 -e
YWJj
→ Solaris など echo -c で改行抑止とならない環境もある
% echo abc | tr -d '\n' | base64 -e
YWJj
% printf abc | base64 -e
YWJj
ファイル内容をエンコード・デコード
% base64 -e sample.txt > sample.base64
% base64 -d sample.base64 > sample.txt
●関連コマンド
openssl enc を使って BASE64 のエンコード・デコードをすることもできる。
% echo abc | openssl enc -base64
YWJjCg==
% echo YWJjCg== | openssl enc -base64 -d
abc