本文介绍了防止GNU make在环境变量中扩展美元符号的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
有什么方法可以使GNU Make在环境变量中按字面意义解释美元符号吗?
Is there any way to make GNU Make interpret dollar signs literally in environment variables?
获取此makefile:
Take this makefile:
echoFOO:
echo '$(FOO)'
像这样运行它:
$ FOO='a$bc' make
echo 'ac'
ac
我希望这能从字面上回显a $ bc,但是我找不到找到让GNU Make摆脱我的环境变量困扰的方法.
I'd like this to echo a$bc literally, but I can't find a way to get GNU Make to keep its damn hands off my environment variables.
推荐答案
两种获得所需结果的方法,我可以看到.两者都需要权衡.
Two ways to get the result you want that I can see. Trade-offs with both.
$ cat Makefile
all: echoFOO echovFOO
echoFOO:
echo '$(FOO)'
echovFOO:
echo '$(value vFOO)'
$ FOO='a$$bc' vFOO='a$bc' make
echo 'a$bc'
a$bc
echo 'a$bc'
a$bc
这篇关于防止GNU make在环境变量中扩展美元符号的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!