GNU/Linux >> Linux の 問題 >  >> Linux

base64 のデコード:無効な入力

使用することもできます

echo -n

改行を抑制し、入力の長さを 4 の倍数になるように 1 ~ 3 個の等しい文字でパディングします

=

そのバージョンは (デフォルトでは) セパレーターのある行をデコードしませんが、エンコーダーはデフォルトでそれを行います。 (新しいバージョンにはこの問題はありません。)

1 つの解決策:

base64 -w 0 foo.zip | base64 -d > foo2.zip

代替:

base64 foo.zip | base64 -di > foo2.zip

-i オプションは (man から) を表します ページ):

-i, --ignore-garbage
       When decoding, ignore non-alphabet characters.
[...]
Decoding require compliant input by default, use --ignore-garbage to
attempt to recover from non-alphabet characters (such as newlines)

またはもっと簡単に

base64 -di foo.zip > foo2.zip


Mac でこれを行っている場合は、base64 のバージョン ガベージを無視して処理する柔軟性がない可能性があります。 brew install coreutils の場合 、あなたは gbase64 を持っています Joe が説明したようにユーティリティを使用してください。


Linux
  1. ユニバーサルエクストラクター?

  2. 入力でNohupコマンドを実行しますか?

  3. 「ifs」?

  1. Linuxzipコマンド

  2. DFSRステージングクォータを決定する

  3. 無効な pthread_t ID はありますか?

  1. Grep:{}のコンテンツが無効ですか?

  2. ターミナルでのパスワード入力を隠す

  3. Linuxで7zファイルをzipファイルに再パック