You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Bash中通过Base64编码字符串执行命令?

在Bash中执行Base64编码的命令字符串

嘿,这事儿其实挺容易实现的,核心思路就是先把Base64编码的字符串解码成原始命令,再交给Bash执行就行。我给你一步步演示:

基础执行方法

针对你举的例子bHMgLWwgLwo=(对应ls -l),直接用管道串联三个操作就能搞定:

echo "bHMgLWwgLwo=" | base64 -d | bash

拆解一下每个部分的作用:

  • echo "bHMgLWwgLwo=":输出Base64编码的字符串
  • base64 -d:解码输入的Base64内容(-d是decode的缩写)
  • bash:把解码后的命令文本当作Shell脚本执行

先验证解码结果(可选)

如果你不确定编码串对应的命令是什么,可以先单独解码看看:

echo "bHMgLWwgLwo=" | base64 -d

执行后会输出ls -l (末尾的换行不影响后续执行),确认没问题再交给Bash执行就更稳妥。

其他实现方式

除了管道,也可以用命令替换的写法,比如:

$(base64 -d <<< "bHMgLWwgLwo=")

或者用Here字符串传递给Bash:

bash <<< "$(base64 -d <<< "bHMgLWwgLwo=")"

这两种写法效果和管道方式一致,看你个人习惯选就行。

重要提醒

⚠️ 一定要注意:执行未知来源的Base64编码串风险极高,相当于直接在系统上运行任意命令。只有当你完全信任这个编码串的来源时,再执行操作!

内容的提问来源于stack exchange,提问作者user353498

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 07:39:06