Maybaygiare.org

Blog Network

Mac OSまたはLinuxでBase64文字列をエンコードおよびデコードする方法

トレメインエト

Follow
2020年9月9日

james orrによる写真unsplash

私の日々のソフトウェアエンジニアリングで行う必要がある非常に一般的なタスクの1つは、base64文字列をエンコードまたはデコードすることです。 これを行うには、端末で実行できるコマンドごとに1つのコマンドを簡単に記憶できます。まず第一に、コマンドラインインターフェイスでこれを行う必要がないことを言及しなかった場合、私は怠慢になります。 このタスクを達成する2つの兄弟webサイト、Base64DecodeとBase64Encodeがあります。 私は決して彼らと提携していませんが、多くの開発者が彼らに精通していると確信しています。

ただし、これらのサイトを使用できない理由にはさまざまな理由があります。 第二に、おそらくあなたは完全にあなたが知らない誰かのサーバーに行くあなたの秘密のデータを信頼していません。 どちらも本当に有効なポイントであり、それが私がやろうとしている方法を提案する理由です。

まず、base64でエンコードするには、ターミナルで次のコマンドを実行します:p>

echo -n 'username' | base64

これに別のコンポーネントを見てみましょう。

  • echo:このコマンドは文字列を標準出力に書き込みます。
  • -n:このフラグは、出力を新しい行に印刷することを示します。 これは実際には非常に便利です。base64エンコードされた文字列は、スペースや何もない直後に印刷されるためです。 コピーして貼り付けるのは難しいだけで、最初のコマンドの一部を誤って文字列でコピーすることもありますが、これは確かに頭痛の原因になります。 コマンドを実際に動作させる必要はありませんが、このフラグを含める習慣を身につけることをお勧めします。これは、base64エンコードする文字列を配置する場所です。usernameである必要はありません。
  • 'username':これは、base64エンコードする文字列を配置する場所です。
  • |
  • |: これは、基本的に、左側の部分の出力を右側の部分にリダイレクトすることをコマンドに指示するパイプです。 この場合、私たちは単に私たちが書いたものをエコーするだけではなく、それをエンコードしたいと思っています! したがって、右側に文字列をエンコードするための命令を提供します。これは、MacまたはLinux OSに事前にパッケージ化されたcoreutilsにある他の使い慣れたツールには、lsrmcatが含まれます。 基本的には、これはあなたが以前に提供した文字列をエンコードするすべてのハードワークを行います。

上記のコマンドの出力は次のとおりです。

dXNlcm5hbWU=

base64でデコード

実際に上記のbase64エンコードされた文字列dXNlcm5hbWU=。 それをデコードしたい場合、プロセスは実際には上記のセクションと同じくらい簡単です。

単純に次のコマンドを実行します。

base64 --decode dXNlcm5hbWU=

これは非常に理解しやすいはずです。--decodeフラグは、あなたが思う 出力は次のとおりです。

username

暗記しやすいが、人生に役立つ

ソフトウェアで作業する場合、上記の小見出しは誇張ではないと思

コメントを残す

メールアドレスが公開されることはありません。