lör*_*örf 9 bash docker dockerfile
在我的Dockerfile中,我想用字符串替换变量。
ARG w=world
RUN echo 'Hello $w'
Run Code Online (Sandbox Code Playgroud)
我希望输出为,Hello world但实际输出为Hello $w
BMi*_*tch 13
Docker 不会在 RUN 命令中扩展 ARG 值。相反,它将 ARG 作为环境变量注入。shell 本身扩展了变量,我使用的所有 Linux shell 的行为都因引用类型而异。
单引号指示 shell 不展开任何内容,您只需要转义单引号和转义字符。虽然双引号包括变量扩展以及许多其他转义字符。有关更多详细信息,请参阅 shell 上的手册页。
所以你已经找到的解决方案是:
RUN echo "Hello $w"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2927 次 |
| 最近记录: |