我试图让这段代码替换一个属性和值,但它会删除整行。

ruby_block "update connection pool" do
  block do
    fe = Chef::Util::FileEdit.new(servlet_xml_path)
    fe.search_file_replace("maxPoolSize=\"[0-9]+\"", "maxPoolSize=\"20\"")
    fe.write_file
  end
end

如果我有一个更简单的正则表达式,该函数就可以工作,比如:
fe.search_file_replace("maxPoolSize=", "maxPoolSize2=")

最佳答案

贝类提供了我想要的答案。
fe.search_file_replace(/maxPoolSize=“[0-9]+”/,'maxPoolSize=”20“)-

关于ruby - 厨师文件search_file_replace为什么不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27907956/

10-14 16:23
查看更多