在 docker 内运行命令的一个大坑

当你希望使用 docker 容器内部的 echo 打印 docker 容器内部的环境变量时,不能直接使用下面的命令:

bash 复制代码
docker run IMAGE_NAME bash -c "echo $ENVNAME"

这是因为,host 中的 shell 会把 "$ENVNAME" 替换成 host 上的 ENVNAME 的值

正确方法,加个反斜杠,如下:

bash 复制代码
docker run IMAGE_NAME bash -c "echo \$ENVNAME"

转义 $ 符号,让它被传进 docker 容器内,这样就可以打印 docker 内部的环境变量了

相关推荐
2301_8035545223 分钟前
Linux里面的文件描述符和windows里面的句柄
linux·运维·服务器
IT摆渡者24 分钟前
linux 系统安全检查
运维·网络·经验分享·笔记
云动课堂35 分钟前
【运维实战】Nginx 高性能Web服务 · 一键自动化部署方案 (适配银河麒麟 V10 / openEuler / CentOS 7/8)
运维·前端·nginx
KnowSafe2 小时前
证书自动化解决方案哪家更可靠?
运维·服务器·安全·https·自动化·ssl
hsjcjh2 小时前
2026实测:Gemini 3.1镜像站函数调用如何实现自动化运维工单?国内免费镜像教程
运维·自动化
日取其半万世不竭2 小时前
用云服务器搭建 Nextcloud,告别网盘限速和隐私泄露
运维·服务器
KnowSafe2 小时前
2026年证书自动化解决方案选型指南
运维·安全·自动化·ssl·itrustssl
ZGi.ai2 小时前
企业Agent编排实战:条件分支+并行执行+异常处理全覆盖
运维
wanhengidc2 小时前
可持续性 云手机运行
运维·服务器·网络·安全·智能手机
王琦03182 小时前
第二章 chrony服务器
运维·服务器