base64 - データを印刷可能な文字に変換する

スポンサーリンク

base64は、US-ASCII文字のデータしか扱うことができない環境でデータの格納や転送を行うために使われます。具体的に電子メールで音声データや画像データの送信などに利用されます。

base64コマンドは、データをbase64のデータにエンコードまたはデコードすることができます。

スポンサーリンク

base64コマンドとは

base64コマンドとは、データを64種類の印刷可能なアルファベットと数字に変換するコマンドです。
変換方法は8ビットを6ビット区切りに置き換えて、その6ビットをアルファベットに置き換えます。
そのため、変換後データは、変換前データの約133%の大きさになります。
詳しい変換表は、RFC4648を参照してください。

また、base32コマンドは、データを32種類の印刷可能なアルファベットと数字に変換するコマンドです。オプションもbase64コマンドと同様です。

 

 

 

base64コマンドの構文

base64のエンコーディング

base64のデコーディング

 

 

 

base64コマンドの利用例

base64にエンコード
(オプションなし)

ファイルまたは標準入力をbase64にエンコードします。

コマンド例

enc.txt

実行結果

 

 

 

base64のデータをデコード
(-dオプション)

-dオプションは、base64にエンコードしたデータをデコードします。

コマンド例

enc.txt.base64

実行結果

 

 

 

余分なバイトを無視
(-iオプション)

デコードを行うとき、base64にエンコードしたデータにタブ文字のような余分な文字が含まれている場合、デコードできないため、途中で終了します。
-iオプションを用いるとbase64でデコードできない文字は無視して、デコードを行うことができます。

コマンド例

enc.txt.base64_broken

実行結果

 

 

 

折り返しの文字数を指定
(-wオプション)

-wオプションは、文字数を指定してその文字数の後に折り返しを入れます。
デフォルトでは、76文字の後に折り返しを入れます。
また、0を入力すると折り返しをしません。

コマンド例

実行結果

 

 

 

参考

外部リンクGnu Coreutils

外部リンクGnu Coreutils日本語版