在 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 内部的环境变量了

相关推荐
倔强的石头106几秒前
【Linux指南】Linux快捷键与系统实用技巧
linux·运维·服务器
番茄地瓜3 分钟前
Linux 配置静态 IP 步骤
linux·运维·服务器
小肥君10 分钟前
docker无法连接GPU资源解决方案
docker·容器·eureka
.千余1 小时前
【Linux】 传输层协议UDP:从端口号到传输机制
linux·运维·udp
viva51721 小时前
Docker/历史演进,核心功能,相关工具
docker
囚~徒~2 小时前
轻量化的虚拟机
linux·运维·服务器
SteveSenna2 小时前
Ubuntu 20.04 安装 Isaac Sim 4.5 + Isaac Lab
linux·运维·服务器
开开心心就好2 小时前
支持多显示器的Windows高效分屏工具
运维·python·科技·游戏·计算机外设·ocr·powerpoint
lizhihai_993 小时前
股市学习心得-A股服务器/算力服务器龙头
大数据·运维·服务器·人工智能·科技·学习
鼎讯信通3 小时前
守护风电场 “无线神经”:LN-090A 宽频高速手持式频谱分析仪
运维·信息与通信