Base64形式で2つのバイナリ文字列を連結する

Base64形式で2つのバイナリ文字列を連結する

2つのBASE64エンコーディング文字列があり、コマンドラインのみを使用して2つの文字列のバイナリ接続のBASE64エンコーディングを取得したいと思います。

例:

> $ echo -n "\x01\x02" |base64                                                          
AQI=

> $ echo -n "\x03\x04" |base64                                                              
AwQ=

> $ echo -n "\x01\x02\x03\x04" |base64
AQIDBA==

したがって、私の問題の入力値は次AQI=のようになります。AwQ=必要な出力は次のとおりです。AQIDBA==

ベストアンサー1

入力をデコードして再エンコードするのが最も簡単な方法です。

$ echo "AQI=AwQ=" | base64 -d | base64
AQIDBA==

(代わりにパディングされた文字列よりも多くを読むことが=あなたの感性を傷つける場合は、各文字列に対して個別にデコーダを実行してください。)

$ (echo "AQI=" |base64 -d ; echo "AwQ=" |base64 -d) | base64
AQIDBA==

おすすめ記事