首页 > 后端开发 > Golang > 如何在 Makefile 命令中转义美元符号插值?

如何在 Makefile 命令中转义美元符号插值?

Mary-Kate Olsen
发布: 2024-12-16 10:11:11
原创
1002 人浏览过

How Can I Escape Dollar Sign Interpolation in Makefile Commands?

在 Makefile 命令中转义表达式插值

问题:

在 Makefile 的命令中插值表达式时遇到困难由于评估

说明:

与 shell 脚本相比,Makefile 使用不同的评估规则。在 Makefile 中,美元符号 ($) 用于变量扩展,但在命令中使用时,可能无法按预期计算。

解决方案:

要转义 Makefile 命令中的 $ 并启用类似 shell 的表达式插值,请使用第二个美元符号 ($$)。这告诉 Makefile 将第一个 $ 视为文字文本并推迟对 shell 的插值。

示例:

在 Go 项目中运行测试,但跳过供应商测试时,您可以使用以下 Makefile 片段:

test:
    go test $$(go list ./... | grep -v /vendor/)

.PHONY: test
登录后复制

在此示例中,$$(go list ./... | grep -v /vendor/) 包含在双美元内,以确保 shell 插入表达式。

通过转义美元符号,Makefile 可以正确计算表达式并提供预期的输出。

以上是如何在 Makefile 命令中转义美元符号插值?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板