Linux 上的 Bash base64 解码和编码
Linux 通常使用 base64 来编码和解码数据。这种编码方法为数据传输和存储提供了可靠的方式。编码过程会将二进制数据转换为 ASCII 字符,使其可供各种需要可读 ASCII 字符传输(而不是二进制)的服务(例如 OpenSSL)使用。然后,数据可以被解码回二进制数据。在本教程中,您将了解如何使用 base64
命令在 Linux 系统上对数据进行解码和编码。
在本教程中您将学习:
如何在终端中使用base64对数据进行编码和解码
如何对文件中的 Base64 数据进行编码和解码
Base64 编码和解码示例命令
base64
实用程序应默认安装在所有主要 Linux 发行版上。让我们看一些示例,了解如何使用 base64
Linux 命令从命令行对数据进行编码和解码。
使用不带其他选项的
base64
命令会将终端输入或文件内容编码为base64格式。让我们看一个通过标准输入从echo
命令转换文本字符串的简单示例。$ echo "Welcome to linuxconfig.org" | base64 V2VsY29tZSB0byBsaW51eGNvbmZpZy5vcmcK
输出(第二行)是我们的 Base64 编码数据。
现在我们可以获取上面收到的编码数据,并使用
-d
或--decode
选项将其解码回原始格式。$ echo V2VsY29tZSB0byBsaW51eGNvbmZpZy5vcmcK | base64 -d Welcome to linuxconfig.org
我们还可以使用以下命令语法将输入文件编码为 Base64 格式:
$ base64 input-file.txt VGhpcyBpcyBteSBpbnB1dCBmaWxlIQo=
或者将编码数据输出到自己的文件中:
$ base64 input-file.txt > output-file.txt
接下来,让我们使用
-d
或--decode
选项将文件从 Base64 解码回其原始格式:$ base64 -d output-file.txt This is my input file!
解码后的内容在我们的终端中显示为输出。
注意
虽然乍一看,base64 似乎像加密一样模糊了我们的文本字符串,但 base64 不是加密,不应该用作保护敏感信息的替代品。该数据可以轻松解码,并且 Base64 并不意味着使原始数据难以破译。
结束语
在本教程中,我们了解了如何使用 base64
命令在 Linux 系统上对数据进行编码和解码。由于某些程序和系统服务需要对其输入进行 Base64 编码,因此系统管理员能够快速将二进制数据编码为 Base64 以用作输入非常方便。还可以使用相同的命令将编码数据转换回人类可读的格式。