我想在ruby_block
的配方中使用以下代码,但由于'$'
,它无效。代码找不到$NAME
,但可以找到NAME
。你能给我一个解决方案吗?
file.search_file_replace_line("DEFAULT=/etc/default/$NAME","DEFAULT=/etc/default/tomcat7")
答案 0 :(得分:2)
search_file_replace_line
期望正则表达式成为第一个参数。而美元符号是正则表达式中的特殊符号,它基本上就意味着行尾。所以,如果你真的想用它替换它,你必须正确地逃避它。
这将完成这项工作:
file.search_file_replace_line("DEFAULT=/etc/default/\\$NAME","DEFAULT=/etc/default/tomcat7")