我有一个变量,例如:Make:如何替换make变量中的字符?
export ITEM={countryname}
这可以是:
"Albania",
"United States" // with space
"Fs. Artic Land" // dot
"Korea (Rep. Of)" // braket
"Cote d'Ivoir" // '
这个变量$(ITEM)
被传递到其他命令,一些需要是因为它(细,我将使用$(ITEM)
),一些MUST HAVE字符替换,通过实例,去与mkdir -p ../folder/{countryname}
:
"Albania" // => Albania
"United States" // => United_States
"Fs. Artic Land" // => Fs\._Artic_Land
"Korea (Rep. Of)" // => Korea_\(Rep\._Of\)
"Cote d'Ivoire" // => Cote_d\'Ivoire
所以我需要一个新的化妆杂物竹叶提取这种
export ITEM={countryname}
export escaped_ITEM=$(ITEM).processed_to_be_fine
我应该怎么做我的makefile内这个字符替换?(保持简单,不必做外部脚本)。我正在考虑使用一些transclude tr
什么的。
注意:在Ubuntu上工作。
该变量的字面意思是该字符串的内容(与'['和引号和逗号,但可能不与'/ /'评论)?如果您在shell级别的引号内使用它们(例如'mkdir -p“科特迪瓦”'和'mkdir -p“Korea(Rep。Of)”''工作,您不需要转义任何字符串没问题。) – 2014-08-28 18:41:11
我的make run mkdir -p Cote d'Ivoire这不起作用。 – Hugolpz 2014-08-28 19:09:50
是的,请注意你是如何不引用该目录名称的,而且我也这样做了。这很重要。 – 2014-08-28 19:12:20