Linux下Base64文件和二进制文件互相转换的几种方法

Linux 下,有几种方法可以将文件和 Base64 互相转换,下面是 标准命令和示例

1. 将文件编码为 Base64

base64 input_file > output_file.b64
  • input_file:原始文件(可执行文件、二进制、文本等)
  • output_file.b64:生成的 Base64 文件

示例:

base64 firmware.bin > firmware.b64

2. 将 Base64 文件解码回原始文件

base64 -d input_file.b64 > output_file
  • -d--decode:表示解码
  • input_file.b64:Base64 文件
  • output_file:恢复后的原始文件

示例:

base64 -d firmware.b64 > firmware.bin

3. 使用 openssl base64(兼容性更好)

编码:

openssl base64 -in firmware.bin -out firmware.b64

解码:

openssl base64 -d -in firmware.b64 -out firmware.bin

4. 使用 xxd(十六进制方式,可用于不支持 base64 的环境)

编码:

xxd -p firmware.bin > firmware.hex

解码:

xxd -r -p firmware.hex > firmware.bin

💡 注意事项

  • Base64 文件会比原文件大约 33%
  • 二进制文件解码后需要赋予执行权限才能运行(如果是可执行文件):
chmod +x firmware.bin
THE END