Linux 的 base64 命令

Linux 的 base64 命令详解

命令概述

base64 是 Linux 系统中用于 Base64 编码和解码的标准命令工具。Base64 是一种基于 64 个可打印字符来表示二进制数据的编码方式,常用于在文本环境中传输或存储二进制数据。

基本语法

bash 复制代码
base64 [选项] [文件]

常用选项

  • -d 或 --decode:解码 Base64 数据(默认是编码)
  • -i 或 --ignore-garbage:解码时忽略非字母字符
  • -w 或 --wrap=COLS:指定每行输出的字符数(默认 76,0 表示不换行)
  • --help:显示帮助信息
  • --version:显示版本信息

使用示例

1. 基本编码

bash 复制代码
echo 'xplanc.org' | base64

输出示例:

复制代码
eHBsYW5jLm9yZwo=

2. 基本解码

bash 复制代码
echo "eHBsYW5jLm9yZwo=" | base64 --decode

输出:

复制代码
xplanc.org

3. 文件编码

bash 复制代码
base64 image.jpg > image.txt

4. 文件解码

bash 复制代码
base64 -d image.txt > image.jpg

5. 控制换行

bash 复制代码
echo "LongTextToEncode" | base64 -w 0

这会生成不换行的 Base64 字符串

应用场景

  1. 电子邮件附件:MIME 使用 Base64 编码二进制附件
  2. 数据 URI:网页中嵌入小图片等资源
  3. 简单加密:存储密码等敏感信息(需配合其他安全措施)
  4. API 认证:HTTP 基本认证使用 Base64 编码用户名密码
  5. 配置文件:在文本配置文件中嵌入二进制数据

注意事项

  1. Base64 编码会增加约 33% 的数据量
  2. 不是加密方法,只是编码方式,数据可被轻松解码
  3. 某些实现可能有行长度限制(通常 76 字符)
  4. 不同系统/语言的 Base64 实现可能存在细微差异
相关推荐
夜之眷属12 分钟前
PriorityQueue:for-each 遍历和 poll 取出,顺序一样吗?
java·服务器·数据结构·后端·算法
信可维16 分钟前
自动化操作多平台账号:登录态、双会话与 User Data 的 3 个坑
运维·自动化
龙仔72523 分钟前
RustDesk 自建服务器 Key 强校验配置笔记
运维·服务器·笔记
大侠归来1 小时前
Docker 部署 Dolibarr:从零开始的完整指南
运维·docker·容器
KING-WU5121 小时前
Linux GDB 调试实战指南:从编译到断点调试
linux·运维·服务器
Lucis__1 小时前
深入理解程序链接与加载—从动静态链接到库加载
linux·elf·链接·程序·动静态库
傲世仙尊1 小时前
类和对象中-构造函数与析构函数把初始化清理自动化
java·运维·自动化
七月吃橘子1 小时前
WSL2+Docker+Ollama,本地部署大模型实践(Qwen1.8b)
运维·docker·容器
贵州诚鑫致达科技有限公司1 小时前
PVID 是什么?端口参数三身份
服务器·经验分享
影视飓风TIM1 小时前
Linux 进程信号原理与剖析
linux·运维·服务器